Algs4-1.4.8计算输入文件中相等的整数对的数量
1.4.8編寫一個(gè)程序,計(jì)算輸入文件中相等的整數(shù)對的數(shù)量。如果你的第一個(gè)程序是平方級別的,請繼續(xù)思考并用Array.sort()給出一個(gè)線性對數(shù)級別的解答。
import java.util.Arrays;
public class TwoSame
{
?//增長函數(shù)N2?
public static int count1(int[] a)
??? {
??????? int N=a.length;
??????? int cnt=0;
??????? for (int i=0;i<N;i++)
??????????? for (int j=i+1;j<N;j++)
???????????????????? if(a[i]==a[j])
??????????????????????? cnt++;
??????? return cnt;
??? }
?//增長函數(shù)NlgN,最壞情況所有數(shù)都相等時(shí) N2
?
???? public static int count2(int[] a)
??? {
??????? int N=a.length;
??????? int cnt=0;
??????? Arrays.sort(a);
??????? for (int i=0;i<N;i++)
???????????? for(int j=i+1;j<N && a[i]==a[j];j++)
??????????????????????? cnt++;//調(diào)整此處的代碼可以滑過相等項(xiàng),對于所有數(shù)相同時(shí)增長函數(shù)為NlgN
??????? return cnt;
??? }
???
??? public static void main(String[] args)
??? {
??????? int[] a=In.readInts(args[0]);
??????? StdOut.println("count1="+count1(a));
??????? StdOut.println("count2="+count2(a));
??? }
}
轉(zhuǎn)載于:https://www.cnblogs.com/longjin2018/p/9854406.html
總結(jié)
以上是生活随笔為你收集整理的Algs4-1.4.8计算输入文件中相等的整数对的数量的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 商城项目实战2-登录模块的实现
- 下一篇: 原 荐 简单说说Kafka中的时间轮算法