数组里的正数和负数排序
来源:互联网 发布:防火墙拦截udp端口 编辑:程序博客网 时间:2024/04/27 14:08
/* 假设一整型数组存在若干正数和负数,现在通过某种算法使得该数组的所有负数在正数的左边, 且保证负数之间和正数之间元素相对位置不变。时空复杂度要求分别为:o(n),o(1) 我是简单模拟的空间复杂度 o(1) 时间复杂度最坏 o(n*n)*/#include <stdio.h>void f(int a[],int n){ int temp=0,i=0,j,count=0; int num=0; int k; // while(i<n) for(i=0;i<n;i++) { if(a[i]>0) { num++; continue; } count=num; k=i; temp=a[k]; while(count>0) { a[k]=a[k-1]; k--; count--; } a[k]=temp; }}int main(){ int a[]={-5,2,-3, 4,-8,-9,1, 3,-10}; for(int i=0;i<9;i++) printf("%d ",a[i]); printf("\n"); f(a,9); for(int i=0;i<9;i++) printf("%d ",a[i]); printf("\n"); //for(;;); return 0;}
- 数组里的正数和负数排序
- 数组里的正数和负数排序
- 将数组里的负数排在数组的前面,正数排在数组的后面。但不改变原先负数和正数的排列顺序。
- 排序使得数组负数在正数左边且按照原来的顺序
- 排序使得数组负数在正数左边且按照原来的顺序
- 找出一个个既有正数又有负数的数组中子数组的和的最大值
- 一个数组 里面正数和负数求所有子数组的最大值
- 每天学习一算法系列(4) (输入一个整形数组,数组里有正数也有负数,数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和)
- 输入一个整形数组,数组里有正数也有负数,数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和
- 【C语言】输入一个整形数组,数组里有正数也有负数,数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。
- 每天学习一算法系列(4) (输入一个整形数组,数组里有正数也有负数,数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和)
- 求数组(元素可为正数、负数、0)的最大子序列和
- 求数组(元素可为正数、负数、0)的最大子序列和,
- 求数组(元素可为正数、负数、0)的最大子序列和。
- 求数组(元素可为正数、负数、0)的最大子序列和。
- 求数组(元素可为正数、负数、0)的最大子序列和
- 求数组(元素可为正数、负数、0)的最大子序列和。
- C语言 负数除以正数, 与正数除以负数的 余数和商 的正负
- cocos-2d中CCUserDefault的使用
- Qt4.7文档翻译:Qt样式单参考,Qt Style Sheets Reference
- wcf 生成客户端脚本
- usb-skeleton.c到 usb core层的分析
- 放假计划需求
- 数组里的正数和负数排序
- Android 音频管理器AudioManager
- SQLServer2008 error 40 错误
- PogoPlug折腾全过程--安装transmission、samba
- 说说余额宝
- GDI+学习及代码总结之------图像的编码与解码
- QSS定制自定义QSlider
- 利用jquery对ajax操作,详解原理(附代码)
- xheditor插件默认字体大小的设置