知识大全 数据结构考研分类复习真题 第五章 答案[37]
Posted 元素
篇首语:刑天舞干戚,猛志固常在。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 数据结构考研分类复习真题 第五章 答案[37]相关的知识,希望对你有一定的参考价值。
[题目分析]判断二维数组中元素是否互不相同 只有逐个比较 找到一对相等的元素 就可结论为不是互不相同 如何达到每个元素同其它元素比较一次且只一次?在当前行 每个元素要同本行后面的元素比较一次(下面第一个循环控制变量p的for循环) 然后同第i+ 行及以后各行元素比较一次 这就是循环控制变量k和p的二层for循环
int JudgEqual(ing a[m][n] int m n) //判断二维数组中所有元素是否互不相同 如是 返回 否则 返回 for(i= ;i<m;i++) for(j= ;j<n ;j++) for(p=j+ ;p<n;p++) //和同行其它元素比较 if(a[i][j]==a[i][p]) printf( no ); return( ); //只要有一个相同的 就结论不是互不相同 for(k=i+ ;k<m;k++) //和第i+ 行及以后元素比较 for(p= ;p<n;p++) if(a[i][j]==a[k][p]) printf( no ); return( ); // for(j= ;j<n ;j++) printf(yes ); return( ); //元素互不相同 //算法JudgEqual结束
( )二维数组中的每一个元素同其它元素都比较一次 数组中共m*n个元素 第 个元素同其它m*n 个元素比较 第 个元素同其它m*n 个元素比较 …… 第m*n 个元素同最后一个元素(m*n)比较一次 所以在元素互不相等时总的比较次数为 (m*n )+(m*n )+…+ + =(m*n)(m*n )/ 在有相同元素时 可能第一次比较就相同 也可能最后一次比较时相同 设在(m*n )个位置上均可能相同 这时的平均比较次数约为(m*n)(m*n )/ 总的时间复杂度是O(n )
cha138/Article/program/sjjg/201311/23019相关参考
第五章 数组和广义表答案 一选择题 BLJCICBBAHCEAFBEABBBBBABBACDCDFCDCACA 二判断题 ×√√×××√××××√√√ 部分答案解释如下 错误
.这是一个递归调用问题运行结果为DBHEAIFJCKGL ()FOR循环中每次执行PerfectShuffle(AN)和CompareExchange(AN)的结果 第次A[]=[] A[]
.() () ()i=j=即A[]  
()略 ()求广义表原子个数的递归模型如下 f(p)= PROCNumber(p:glist;VARn:integer) VARm:integer; n:=; IFp<>N
深度为长度为 ()略 ()表的长度为深度为 ()head(tail(head(head(head(tail(tail(tail(tail(A))))))))) 共享结构广义表A=(((bc
Head(Tail(Head(Head(L)))) Head(Head(Head(Tail(Head(Tail(L)))))) 类似本题的另外叙述的几个题解答如下 ()head(head(t
head(tail(head(tail(H)))) (b) (xyz) (de) GetHead(GetHead(GetTail(L))) 本算法中首先数组b中元素以逆置顺序放入d数组中
.每个元素个二进制位主存字长位故每个元素占个字长行下标可平移至到 () () ()s+ ()s+ . 公式 +L(
.错误有以下几处 ()过程参数没有类型说明()出错条件判断缺少OR(i+k>last+) ()删除元素时FOR循环应正向不应用反向DOWNTO()count没定义 低效体现在两处 (
公式LOC(aijk)=LOC(a)+[v*v*(ic)+v*(jc)+(kc)]*l(l为每个元素所占单元数) 第行第列 ()()() i(i)/+j(<=ij<