TZC 1283: 简单排序 —— 插入排序
我们以TZC 1283为例简单说明一下排序(含十大经典排序算法)的python实现方法和C实现方法。冒泡排序原理请参见:https://zhuanlan.zhihu.com/p/122293204 或 https://www.runoob.com/w3cnote/insertion-sort.html
原题链接:1283: 简单排序
python 代码如下:
# 插入排序
def insertion_sort(arr):for a in range(len(arr)):pre_index = a - 1current = arr[a]while pre_index >= 0 and arr[pre_index] > current:arr[pre_index + 1] = arr[pre_index]pre_index -= 1arr[pre_index + 1] = currentreturn arrT = int(input())
for i in range(T):s = input().split()lt = [int(x) for x in s]lt1 = lt[::-1]lt1.pop()n = len(lt1)insertion_sort(lt1)for j in range(n):if j != n - 1:print(lt1[j], end=' ')else:print(lt1[j])
C语言代码如下:
#include <stdio.h>
#include <string.h>
#define N 1010// 插入排序
void InsertSort(int arr[], int len)
{int i,j,tmp;// 检查数据合法性if(arr==NULL || len<=0)return;for(i=1; i<len; i++){tmp=arr[i];for(j=i-1; j>=0; j--){//如果比tmp大把值往后移动一位if(arr[j]>tmp)arr[j+1] = arr[j];elsebreak;}arr[j+1]=tmp;}
}
int main()
{int m,n,i,j,t,a[N];scanf("%d",&m);while(m--){scanf("%d",&n);memset(a,0,n); //初始化数组for(i=0;i<=n-1;i++) //输入scanf("%d",&a[i]);InsertSort(a,n);for(i=0;i<=n-1;i++) //输出 {if(i!=n-1)printf("%d ",a[i]);elseprintf("%d\n",a[i]);}}return 0;
}
TZC 1283: 简单排序 —— 插入排序相关推荐
- TZC 1283: 简单排序 —— 归并排序
我们以TZC 1283为例简单说明一下排序(含十大经典排序算法)的python实现方法和C实现方法.归并排序原理请参见:https://www.jianshu.com/p/33cffa1ce613 或 ...
- TZC 1283: 简单排序 —— 快速排序
我们以TZC 1283为例简单说明一下排序(含十大经典排序算法)的python实现方法和C实现方法.快速排序原理请参见:https://www.runoob.com/w3cnote/quick-sor ...
- TZC 1283: 简单排序 —— 堆排序
我们以TZC 1283为例简单说明一下排序(含十大经典排序算法)的python实现方法和C实现方法.堆排序原理请参见:https://blog.csdn.net/u010452388/article/ ...
- TZC 1283: 简单排序 —— 希尔排序
我们以TZC 1283为例简单说明一下排序(含十大经典排序算法)的python实现方法和C实现方法.希尔排序原理请参见:https://www.cnblogs.com/chengxiao/p/6104 ...
- TZC 1283: 简单排序 —— 选择排序
我们以TZC 1283为例简单说明一下排序(含十大经典排序算法)的python实现方法和C实现方法.比较排序过程中,按住某一个数和后面的所有数都比较一下,如果前者大于后者,则进行交换,比较排序过程中显 ...
- TZC 1283: 简单排序 —— 冒泡排序
我们以TZC 1283为例简单说明一下排序(含十大经典排序算法)的python实现方法和C实现方法.冒泡排序原理请参见:https://www.runoob.com/w3cnote/bubble-so ...
- TZC 1283: 简单排序 —— 比较排序
我们以TZC 1283为例简单说明一下排序(含十大经典排序算法)的python实现方法和C实现方法.比较排序是最简单的一种方法,核心实质就是按住第一个和后面所有的都比较一下,然后第二趟再按住第二个和后 ...
- TZC 1283: 简单排序 —— 函数法
我们以TZC 1283为例简单说明一下排序(含十大经典排序算法)的python实现方法和C实现方法.首先来说函数法,python中可以使用sort函数,C语言可以使用qsort函数实现. 原题链接:1 ...
- 简单排序--插入排序
插入排序: public void sort(){int in,out,temp;for(out=1;out<nElements;out++){temp = arr[out];in = out; ...
最新文章
- Unity UI和引用的管理中心
- php获取谷歌地图api接口,谷歌地图 API 开发之信息窗口
- (转)用JQuery实现Fix表头表格
- Modify text in webclient ui - persistent mode
- [蓝桥杯]字符串对比-模拟
- js 多个input值拼接json字符串
- NeHe OpenGL第三十二课:拾取游戏
- 三大工艺因素影响百万像素镜头成像质量
- 深度学习自学(三十五):双向图推理全景图像分割
- 产品 电信nb接口调用_通用电信华为物联网IOT开放平台NB-IOT对接profile透传编解码插件离线定制开发...
- 重走0到100的路,小程序路在何方?
- linux python3 装pip,linux 安装pip 和python3(示例代码)
- IO 设备的分类与概念、IO控制器
- RTKLIB专题学习(八)—卫星星历和钟差
- 软件测试面试常见问题
- 系统辨识(六):最小二乘法的修正算法
- 阿里巴巴二重身ABBC Coin虚涨逾100%
- 利息计算器V3.0感悟
- ADC的积分非线性和微分非线性
- Nreal MR眼镜开发入门教程