
排序
为啥不能重名
这个作者很懒,什么都没留下…
展开
-
7-16 插入排序还是归并排序 (25 分)【二分】
根据维基百科的定义:插入排序是迭代算法,逐一获得输入数据,逐步产生有序的输出序列。每步迭代中,算法从输入序列中取出一元素,将之插入有序序列中正确的位置。如此迭代直到全部元素有序。归并排序进行如下迭代操作:首先将原始序列看成 N 个只包含 1 个元素的有序子序列,然后每次迭代归并两个相邻的有序子序列,直到最后只剩下 1 个有序的序列。现给定原始序列和由某排序算法产生的中间序列,请你判断该算法究竟是哪种排序算法?输入格式:输入在第一行给出正整数 N (≤100);随后一行给出原始序列的 N 个整数;最原创 2021-04-14 16:15:47 · 228 阅读 · 0 评论 -
蓝桥杯-排列序数
X星系的某次考古活动发现了史前智能痕迹。这是一些用来计数的符号,经过分析它的计数规律如下:(为了表示方便,我们把这些奇怪的符号用a~q代替)abcdefghijklmnopq 表示0abcdefghijklmnoqp 表示1abcdefghijklmnpoq 表示2abcdefghijklmnpqo 表示3abcdefghijklmnqop 表示4abcdefghijklmnqpo 表示5abcdefghijklmonpq 表示6abcdefghijklmonqp 表示7……在一处石转载 2020-10-01 11:28:43 · 1105 阅读 · 0 评论 -
7-14 插入排序还是堆排序 (25分)
根据维基百科的定义:插入排序是迭代算法,逐一获得输入数据,逐步产生有序的输出序列。每步迭代中,算法从输入序列中取出一元素,将之插入有序序列中正确的位置。如此迭代直到全部元素有序。堆排序也是将输入分为有序和无序两部分,迭代地从无序部分找出最大元素放入有序部分。它利用了大根堆的堆顶元素最大这一特征,使得在当前无序区中选取最大元素变得简单。现给定原始序列和由某排序算法产生的中间序列,请你判断该算法究竟是哪种排序算法?输入格式:输入在第一行给出正整数 N (≤100);随后一行给出原始序列的 N 个整数;原创 2020-09-19 10:18:02 · 695 阅读 · 0 评论 -
堆排序
最大堆:(数组从0开始记)模板:#include <bits/stdc++.h>using namespace std;int n;int h[501];int arr[501];//记录堆顶元素int cnt;void shifdown(int i){ int flag=0; int t; while(i*2+1<=n-1&&!flag)//他有儿子并且他还可以继续向下 { if(h[i]<h[2*i+1])原创 2020-09-16 17:44:21 · 93 阅读 · 0 评论