正在加载图片...
记录排在关键字为非负值的记录之前,要求 (1)采用顺序存储结构,至多使用一个记录的辅助存储空间 (2)算法的时间复杂度为o(n) (3)讨论算法中记录的最大移动次数 void process(int A[n]) low=0 high=n-1 while( low<high while (low<high & Allow]<0) low++ while(low<high & a[high]>0) high++, if (low<high) Allow]F=Ahigh Ahigh=x low+ high return 13序列的“中值记录”指的是:如果将此序列排序后,它是第n/2个记录。试编写 个求中值记录的算法 int fun(s table *L, int low, int high) L->elem[0=L->elem lowl K=L->elem[0]. key while (low<high)7 记录排在关键字为非负值的记录之前,要求: ⑴采用顺序存储结构,至多使用一个记录的辅助存储空间; ⑵算法的时间复杂度为 O(n); ⑶讨论算法中记录的最大移动次数。 void process (int A[n]) { low = 0; high = n-1; while ( low<high ) { while (low<high && A[low]<0) low++; while (low<high && A[high]>0) high++; if (low<high) { x=A[low]; A[low]=A[high]; A[high]=x; low++; high--; } } return; } ⒔序列的“中值记录”指的是:如果将此序列排序后,它是第 n/2 个记录。试编写一 个求中值记录的算法。 int fun (S_table *L, int low, int high) { L->elem[0] = L->elem[low] ; K=L->elem[0].key; while (low<high)
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有