- 博客(3)
- 资源 (1)
- 收藏
- 关注
原创 有相同元素值时的快速排序——对经典快速排序划分过程的改进
有相同元素值时的快速排序——对经典快速排序划分过程的改进最近做数据结构的课程设计,遇到了这样一道题:用尽可能高的效率分解三种不同数据 如:132123212 --> 11222233 不难看出这道题很像快速排序(quick sort)中对中间数值 2 进行一次划分(partition)过后的结果。但是传统快速排序的划分过程并不会对与基准相同的数值进行操作,与基准相同的值会分布在左右区间中。所以对经典快速排序中的划分过程进行修改,使其变成小于、等于、大于三部分基本思想传统划分:i之前为小于等于
2021-02-25 01:07:06
2418
原创 转圈报数问题(C语言):有n个人围成一圈,顺序排号……
问题描述:有n个人围成一圈,顺序排号。从第1个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号那位。题目分析:这道题目是我们在日常生活中也能经常见到的一种报数小游戏。首先我们先分析一下游戏的核心——轮流报数 这个过程的本质是什么呢?我们分析一下游戏的过程。我们先举一个实例:假如有5个人 分别为ABCDE第一轮:A报1 B报2 C报3(被淘汰) D报1 E报2第二轮:A报3(被淘汰)B报1 C(已被淘汰)D报2 E报3(淘汰)第三轮:A(已被淘汰)B报1 C(已被淘汰)
2020-09-06 17:20:44
15650
4
原创 C语言递归求四个数的最大值:Max函数的递归
递归算法求四个数的最大值**问题描述:**通过函数的递归求四个数的最大值**解题思路:**通过多次比较两个数进行比较大小,本质就是冒泡法排序即max_4=max_2(num1,max_2(num2,max_2(num3,num4)))那么可以将4推广成n,max_n 也可以用n-1次max_2进行运算并用递归表示n次max_2的过程比较四个数字去由于题目中规定的是四个数字,就直接将...
2019-12-28 16:26:54
9796
2
结构体数组编程练习--通信录.cpp
2020-09-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人