当前位置:编程学习 > JAVA >>

求解:研究生面试的题目

给定N个整数的集合S,  输出集合S中所有满足a+b=c的整数a、b、c。要求最坏情况下算法复杂度为O(n^2). (不能通过三个嵌套的循环语句实现) --------------------编程问答--------------------
坐等高手··· --------------------编程问答-------------------- int t=new int[max];
for(int s:S){
     t[s]=s;
}
for(int i=0;i<S.length;i++)
 for(int j=i+1;j<S.length){
    if(S[i]+S[j]==t[S[i]+S[j]]){
     output S[i] ,S[j] ,t[S[i]+S[j]]
}
} --------------------编程问答-------------------- 首先排序

然后从前到后 如果a+b>max continue

我的想法
补充:Java ,  Java相关
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,