查找排序
文章平均质量分 69
jinzk123
这个作者很懒,什么都没留下…
展开
-
二分查找
题目描述在一个给定的无重复元素的递增序列里,查找与给定关键字相同的元素,若存在则输出找到的位置,不存在输出-1。输入一组输入数据,输入数据第一行首先输入两个正整数n ( n 随后m行输入m个待查找的关键字key输出若在给定的序列中能够找到与关键字key相等的元素,则输出位序(序号从0开始),否则输出-1。示例输入8 34 6 8 9 1原创 2016-08-13 15:25:48 · 334 阅读 · 0 评论 -
数据结构实验之排序六:希尔排序
题目描述我们已经学习了各种排序方法,知道在不同的情况下要选择不同的排序算法,以期达到最好的排序效率;对于待排序数据来说,若数据基本有序且记录较少时, 直接插入排序的效率是非常好的,希尔排序就是针对一组基本有序的少量数据记录进行排序的高效算法。你的任务是对于给定的数据进行希尔排序,其中增量dk=n/(2^k)(k=1,2,3……)输入连续输入多组数据,每组输入数据的第一行原创 2016-08-22 20:07:40 · 464 阅读 · 0 评论 -
数据结构实验之排序五:归并求逆序数
题目描述对于数列a1,a2,a3…中的任意两个数ai,aj (i aj,那么我们就说这两个数构成了一个逆序对;在一个数列中逆序对的总数称之为逆序数,如数列 1 6 3 7 2 4 9中,(6,4)是一个逆序对,同样还有(3,2),(7,4),(6,2),(6,3)等等,你的任务是对给定的数列求出数列的逆序数。输入输入数据N(N 输出输出逆原创 2016-08-22 16:01:46 · 563 阅读 · 0 评论 -
数据结构实验之排序七:选课名单
题目描述随着学校规模的扩大,学生人数急剧增加,选课名单的输出也成为一个繁重的任务,我校目前有在校生3万多名,两千多门课程,请根据给定的学生选课清单输出每门课的选课学生名单。输入输入第一行给出两个正整数N( N ≤ 35000)和M(M ≤ 2000),其中N是全校学生总数,M是课程总数,随后给出N行,每行包括学生姓名拼音+学号后两位(字符串总长度小于10)、数字S代表该原创 2016-08-22 15:11:20 · 749 阅读 · 0 评论 -
数据结构实验之查找七:线性之哈希表
题目描述根据给定的一系列整数关键字和素数p,用除留余数法定义hash函数H(Key)=Key%p,将关键字映射到长度为p的哈希表中,用线性探测法解决冲突。重复关键字放在hash表中的同一位置。输入连续输入多组数据,每组输入数据第一行为两个正整数N(N = N的最小素数),N是关键字总数,p是hash表长度,第2行给出N个正整数关键字,数字间以空格间隔。输出原创 2016-08-22 14:34:11 · 256 阅读 · 0 评论 -
数据结构实验之查找五:平方之哈希表
题目描述给定的一组无重复数据的正整数,根据给定的哈希函数建立其对应hash表,哈希函数是H(Key)=Key%P,P是哈希表表长,P是素数,处理冲突的方法采用平方探测方法,增量di=±i^2,i=1,2,3,...,m-1输入输入一组测试数据,数据的第1行给出两个正整数N(N = 2N的最小素数),N是要插入到哈希表的元素个数,P是哈希表表长;第2行给出N个无重复元素的原创 2016-08-22 11:25:43 · 355 阅读 · 0 评论 -
查找练习 hash——出现过的数字
题目描述有一个数据字典,里面存有n个数字(n 输入 输入数据只有一组!第一行包含两个整数n m,分别代表字典中数字的个数和要查询的数字的个数。接着n行代表字典中的n个数字。最后m表示要查询的数字。输出 如果某个数字存在,则输出YES,否则输出NO 示例输入5 3123455410示例输出Y原创 2016-08-22 10:06:49 · 419 阅读 · 0 评论 -
交叉排序
题目描述输入N个数,把所有奇数位置上的数从小到大排序,把偶数位置上的数从大到小排序。输入输入的第一行是一个正整数N(2第二行是N个用空格隔开的整数。输出输出只有一行N个数,是按要求排序后的序列,用空格隔开。示例输入61 2 3 4 5 6示例输出1 6 3 4 5 2提示#include #include int m原创 2016-08-13 16:29:07 · 302 阅读 · 0 评论 -
数据结构实验之排序三:bucket sort
题目描述根据人口普查结果,知道目前淄博市大约500万人口,你的任务是帮助人口普查办公室按年龄递增的顺序输出每个年龄有多少人,其中不满1周岁的按0岁计算,1到2周岁的按1岁计算,依次类推,大于等于100岁的老人全部按100岁计算。输入 输入第一行给出一个正整数N(输出 按年龄递增的顺序输出每个年龄的人口数,人口数为0的不输出,每个年龄占一行,数字间以一个空格分隔,行末不得有多余空原创 2016-08-13 16:18:44 · 230 阅读 · 0 评论 -
交换排序
题目描述冒泡排序和快速排序都是基于"交换"进行的排序方法,你的任务是对题目给定的N个(长整型范围内的)整数从小到大排序,输出用冒泡和快排对这N个数排序分别需要进行的数据交换次数。输入连续多组输入数据,每组数据第一行给出正整数N(N ≤ 10^5),随后给出N个整数,数字间以空格分隔。输出输出数据占一行,代表冒泡排序和快速排序进行排序分别需要的交换次数,数原创 2016-08-13 16:04:46 · 294 阅读 · 0 评论 -
数据结构实验之排序四:寻找大富翁(堆排序)
题目描述2015胡润全球财富榜调查显示,个人资产在1000万以上的高净值人群达到200万人,假设给出N个人的个人资产值,请你快速找出排前M位的大富翁。输入首先输入两个正整数N( N ≤ 10^6)和M(M ≤ 10),其中N为总人数,M为需要找出的大富翁数目,接下来给出N个人的个人资产,以万元为单位,个人资产数字为正整数,数字间以空格分隔。输出一行数据,按降原创 2016-08-23 09:38:42 · 295 阅读 · 0 评论