锁定老帖子 主题:搞不懂算法时间复杂度
精华帖 (0) :: 良好帖 (0) :: 隐藏帖 (1)
|
|
---|---|
作者 | 正文 |
发表时间:2010-10-24
bcccs 写道 man342556278 写道 看了很多书还是搞不懂,这次希望通过JE的兄弟们,帮我解决这个问题。
我用个简单的例子,希望大家能【简单易懂的解释下】! int[] a=0; int[] b=0; for(int i=0;i<=10;i++) { for(int j=0;j<=5;j++) { a[i]=b[j]; } } 没事,你的职业生涯可能都用不到所谓复杂度了。干点适合自己的。 面试的时候会用到! 看了很多书怎么可能还会搞不懂的,是不是没选对书啊 |
|
返回顶楼 | |
发表时间:2010-10-24
无法原谅的程序员/准程序员
|
|
返回顶楼 | |
发表时间:2010-10-25
最后修改:2010-10-25
我觉得楼主应该选择自杀,hoho。。。
public class MultiDimArray{ public static void main(String[] args){ //基本数据类型的多维数组 int[][][] a={{{1,2,3},{4,5,6}},{{7,8,9},{10,11,12}}}; //new了一个指定维数的多维数组,结构和a相同。 int[][][] b=new int[2][2][3]; //分解最外层{}; for(int i=0;i<a.length;i++){ //分解第二层{}; for(int j=0;j<a[i].length;j++){ //彻底打入敌人内部{}; for(int k=0;k<a[i][j].length;k++){ b[i][j][k]=a[i][j][k]; System.out.print("a["+i+"]["+j+"]["+k+"]"+a[i][j][k]+"\t"); System.out.print("b["+i+"]["+j+"]["+k+"]"+b[i][j][k]+"\n"); } } } } } |
|
返回顶楼 | |
发表时间:2010-10-25
runshine 写道 vieri122 写道 bcccs 写道 man342556278 写道 看了很多书还是搞不懂,这次希望通过JE的兄弟们,帮我解决这个问题。
我用个简单的例子,希望大家能【简单易懂的解释下】! int[] a=0; int[] b=0; for(int i=0;i<=10;i++) { for(int j=0;j<=5;j++) { a[i]=b[j]; } } 没事,你的职业生涯可能都用不到所谓复杂度了。干点适合自己的。 这个太犀利了点~~~ 如果楼主是刚毕业,情有可原的 就算是还在校的,你能原谅 int[] a=0; int[] b=0; ? 这种的复杂度是O(1) 确实不像看了很多书的样子 |
|
返回顶楼 | |
发表时间:2010-10-25
感觉楼主看书顺序一点问题!
|
|
返回顶楼 | |
发表时间:2010-10-25
别打击啊,建议楼主去看看 《数据结构与算法分析》java语言描述,挺基础的
|
|
返回顶楼 | |
发表时间:2010-10-25
........数组能初始化等于0???
|
|
返回顶楼 | |
发表时间:2010-10-25
最后修改:2010-10-25
int [] a = {....m} int [] b = {....n} for(int i : a){ for(int j : b){ funcX(a,b,i,j); } } 这个算法作用时间钓大约 = m * n *(funcX时间) => O(m*n) 如果a = b => O(n*n) 大约冒泡排序时间复杂度O(n^2) |
|
返回顶楼 | |
发表时间:2010-10-25
这东西挺筒单,你看一下数据结构那本书的东西一章就明白了
|
|
返回顶楼 | |
发表时间:2010-10-25
看了很多书还是搞不懂
|
|
返回顶楼 | |