根据模3的结果给数组排序
来源:互联网 发布:js选择日期控件 编辑:程序博客网 时间:2024/06/03 07:53
题意:给一个数组,按照模3的结果进行排序(如果模3结果一样顺序可以随意),尽量节省空间,时间。
这个问题下午逛群看到的。
#include <stdio.h>int main(){ int num[] = {1,3,5,33,7,4}; int n = 6; for(int i = 0;i < 6;i ++)printf("%d ",num[i]%3);puts(""); int c1,c2,c0;//c0 为从左起最后一个余数为0后一个元素的位置//c2 为从右起第一个余数为2前一个元素的位置//c1 用于中间元素扫描 c0 = 0,c2 = n - 1;//确定c0,c2的位置 while(c0 < n && num[c0]%3 == 0)c0++; while(c2 >= 0 && num[c2]%3 == 2)c2--;//c1为c0的下一个位置 c1 = c0; while(c0 < c2 && c1 <= c2) { if(num[c1]%3 == 0) { swap(num[c0],num[c1]); c0++; } if(num[c1]%3 == 2) { swap(num[c2],num[c1]); c2--; } if(num[c1]%3 == 1)c1++; } for(int i = 0;i < n;i ++)printf("%d ",num[i]%3);return 0;}
0 0
- 根据模3的结果给数组排序
- php二维数组根据某字段排序(对查询结果集进行排序)
- oracle 给查询结果排序
- perl 如何将多个map的结果返回给数组
- 数组根据数组中字典的value值排序
- PHP数组根据数组内的某个单元字段排序
- PHP数组根据数组内的某个单元字段排序
- 需要根据二维数组里面的某一个数组排序
- 二维数组,根据二维数组内的元素进行排序
- 通过数组给您的文件排序
- 通过数组给您的文件排序
- (PHP)给数组排序的函数!
- 关于php给二维数组的排序
- 用自建的函数给数组排序
- MyBatis动态参数为数组、list、Map,并使用oder by给结果排序
- 给数组排序
- PostgreSQL 给数组排序
- 给字符串数组排序
- Java杂谈之Interface接口
- MakeFile基础知识(十二)
- mfc笔记——控件ocx的添加
- HDU 4941 Magical Forest 多校
- MySql 乱码解决方案
- 根据模3的结果给数组排序
- 五大常用算法 之 分治法
- MakeFile基础知识(十三)
- codefore 10A . Power Consumption Calculation
- hd 3279 Nth Largest Value
- MakeFile基础知识(十四)
- java求解字符串中出现的最多重复字符及个数
- oracle分组取每组第一条数据
- 黑马程序员——初识JAVA