算法学习笔记(二)字符串根据逆序排序
来源:互联网 发布:java时间戳转换工具 编辑:程序博客网 时间:2024/06/18 09:14
1.存放字符串数组的方法:
①使用二维数组char str[size][length],第一维指定字符串的数量,第二维指定字符串的长度,读入时,只需要将内容写入第一维,例如cin >> str[i]
②使用string类型,先加入头文件string,然后就可以定义字符串类型的变量,string变量还可以作为字符数组使用。
2.如果已知一些字符串和它们的逆序,要求按照逆序的升序排列字符串,就涉及到带有关联关系的排序问题,这里有一个好的解决办法是对逆序采用选择排序,每次找出逆序中的最小值,然后输出逆序对应的字符串,接着给这个最小的逆序值赋一个大于数组中任何数的值,再在数组中寻找最小值。为了简化问题,假设这些字符串的长度相等。实现代码如下:
#define NX_MAX 0XFFFFFF //用于赋值给逆序数组中的最小值int string_count; //字符串的数量int string_length; //字符串的长度char string_table[string_count][string_length]; //假设字符串已经录入,注意,实际中不能这//样给数组开辟内存空间,应该先预定义一个较大的数组int nx_table[string_count]; //假设对应于上面数组的逆序已经求出int i,j;int min_index = 0; //存储最小的逆序索引for(i = 0; i < string_count; i++){ for(j = 0; j < string_count; j++) if(nx_table[j] < nx_table[min_index]) min_index = j; cout << string_table[min_index] << endl; nx_table[min_index] = NX_MAX; //关键的一句,将已使用的逆序赋为不会再被找出的值}
0 0
- 算法学习笔记(二)字符串根据逆序排序
- 字符串逆序(二)
- 算法导论学习笔记(二):合并排序
- 归并排序-《算法导论》学习笔记二
- 算法学习之旅,初级篇(9)--字符串逆序
- 【算法学习笔记】20.算法设计初步 归并排序 求逆序数
- 算法学习(排序二)归并排序
- 《算法》学习笔记(排序)
- 1874 字符串排序 (逆序对)
- 【算法】归并排序(可求逆序数或逆序对)
- 算法学习(二)----堆排序
- 排序算法学习经验(二)
- 排序算法学习笔记
- 排序算法学习笔记
- 算法学习笔记-排序
- 排序算法学习笔记
- 排序算法学习笔记
- 排序算法学习笔记
- Unity3D学习笔记(二)Unity的JavaScript基础
- Unity3D学习笔记(三)Unity的C#基础
- Unity3D学习笔记(四)Unity的网络基础(C#)
- 算法学习笔记(一)C++排序函数、映射技巧与字典树
- Unity3D学习笔记(五)C#与JavaScript组件访问的比较
- 算法学习笔记(二)字符串根据逆序排序
- 算法学习笔记(三)问题的转化与高精度运算
- Java学习笔记(一)网格袋布局
- Java学习笔记(二)事件监听器
- Java学习笔记(三)Java2D组件
- FPGA学习笔记(一)Verilog语法基础
- FPGA学习笔记(二)模块建立及变量连接
- 96利用反射获取缓存和应用程序的大小信息
- 待飞日记(第八天和第九天)