- 19
- 0
- 约4.13千字
- 约 25页
- 2017-07-22 发布于贵州
- 举报
实例--线性表
* * 【实例1】设任意n个整数存放于数组A[n]中,试编写算法,将所有负数排在所有正数前面。要求不附加额外的存储空间,且算法时间复杂度为O(n) 。 void Rearrange(int a[],int n) { int i, j, k; i=0, j=n-1; // i,j初始指向线性表a头、尾个元素。 k=a[0]; //将第一个元素的位置腾出。 while (ij) { while (ij a[j]0) j--; //从右向左找负数。 if (ij) a[i++]=a[j]; //将负数前移。 while (ij a[i]0) i++; //从左向右找正数。 if (ij) a[j--]=a[i]; //将正数后移。 } a[i]=k; //将原第一元素放到最终位置。 } 【实例2】请设计算法,将一个向量(a1,a2,…,am)的内容原地逆置,成为(am,am-1,…,a1) 。 void Reverse(int A[], int m, int n) { int i=m, j=n; while ( ij ) { swap(A[i], A[j]); i++; j--;
您可能关注的文档
- 安徽省滁州市明光二中2017届高三上学期第一次月考生物试卷 (Word版含解析).doc
- 安徽省皖南八校2017届高三第一次联考生物试题.doc
- 安徽省示范高中2017届高三10月第一次联考生物试题 word版.doc
- 安徽省示范高中2017届高三第一次联考生物试题.doc
- 安徽省程集中学2017届高三生物上学期期中试题.doc
- 安徽省肥东县众兴中学2017-2017学年高二上学期第三次月考语文试题 Word版含答案.doc
- 安徽省芜湖一中2017届高三上学期第二次模拟考试生物试题.doc
- 安徽省蒙城一中2017届高三上学期第二次月考生物试题.doc
- 安徽省蚌埠五中2017届高三生物一轮测试 生命活动的调节单元检测题.doc
- 安徽省蚌埠市2017届高三第一次教学质量检测生物试题.doc
原创力文档

文档评论(0)