C/C++ 第三周线性表项目(2) 顺序表的应用
2017-09-28 11:03
267 查看
*Copyright(c)2017,烟台大学计算机与控制工程学院 *All rights reservrd. *作者:黄士胜 *完成时间:2017年9月16日 *版本号:v1.0 *问题描述:定义一个采用顺序结构存储的线性表,设计算法完成。 *输入描述:无 *程序输出:依据各个函数而定
运用多文件组织完成本次项目。
头文件:list.h , 源文件:list.cpp 已经把代码省略。
主函数相关代码:
#include "../list.h" #include <stdio.h> void move(SqList *&L) { int i=0,j=L->length-1; ElemType tmp; while (i<j) { while ((i<j) && (L->data[j]%2==0)) //从右往左,找到第一个奇数(偶数忽略) j--; while ((i<j) && (L->data[i]%2==1)) //从左往右,找到第一个偶数(奇数忽略) i++; if (i<j) //如果未到达“分界线”,将右边的奇数和左边的偶数交换 { tmp=L->data[i]; L->data[i]=L->data[j]; L->data[j]=tmp; } } //待循环上去后,继续查找,并在必要时交换 } //操作结束后,奇数在左,偶数在右 //用main写测试代码 int main() { SqList *sq; ElemType a[10]= {7,8,7,0,2,4,5,1,7,3}; CreateList(sq, a, 10); printf("输入前 "); DispList(sq); move(sq); printf("奇数偶数交换后 "); DispList(sq); return 0; }
运行结果:
学习后的心得:
通过算法可以进行对数据的交换。
相关文章推荐
- C/C++ 第三周线性表项目四(1) 顺序表应用
- 第三周项目四C/C++顺序表的应用
- C/C++ 第三周线性表项目(1) 顺序表的基本运算
- 第三周 线性表(-)--顺序表 项目四--顺序表的应用 问题一
- 第三周 线性表(-)--顺序表 项目四--顺序表的应用 问题一
- C/C++ 第三周线性表项目(3) 建设“顺序表”的算法库
- 【第三周 项目4-顺序表的应用】
- C/C++ 第五周线性表 项目(一)建立顺序栈的算法库
- 第三周 项目四-顺序表应用(1)
- 第三周-项目四(2)顺序表的应用
- 第三周 项目4-顺序表的应用
- 第三周项目--顺序表的应用(删除元素)
- 第三周 项目四 顺序表的应用
- 第三周项目4 顺序表应用(2)
- 第三周实践项目1--顺序表的基本运算(2)线性表长度,查找元素
- (第三周项目4)顺序表的应用(1)
- 第三周项目四--顺序表的应用1
- 第三周项目4-顺序表应用(1)
- 第三周 项目 4 顺序表的应用 (2)(补)
- 第三周项目(8):顺序表应用(2)