码迷,mamicode.com
首页 >  
搜索关键字:堆排序 选择排序 升序 降序    ( 7540个结果
数据结构第八章小结
数据结构第八章小结 一、知识点 1、基本概念 排序:按关键字非递增或非递减顺序对一组记录重新排序的操作。 (1)内部排序与外部排序。内部排序:整个排序过程不需要访问外存便能完成外部排序:参加排序的记录数量很大,整个序列的排序过程不可能在内存中完成,需要借助外存 (2)排序稳定性 稳定:冒泡排序、插入 ...
分类:其他好文   时间:2020-07-11 18:57:28    阅读次数:45
【二分图匹配】 双栈排序
##题意 传送门 通过两个栈,4中操作,实现输入序列升序排序 \(操作a:如果输入序列不为空,将第一个元素压入栈S_{1}\) \(操作b:如果栈S_{1}不为空,将S_{1}栈顶元素弹出至输出序列\) \(操作c:如果输入序列不为空,将第一个元素压入栈S_{2}\) \(操作d:如果栈S_{2}不 ...
分类:编程语言   时间:2020-07-11 17:08:48    阅读次数:66
【题解】P4025 [PA2014]Bohater
题目 解 很清奇的贪心策略题 主要是将所有的怪分成两种——$ d<a $的刷分回血怪和 $ d > a$ 的让人残血的BOSS 我们分开处理,先把所有的的刷分怪打完,这样血达到最厚,再去打BOSS 刷分怪先打血少的,也就是按d升序 BOSS先打血药大的,也就是按a降序,这里很神奇 详见代码 code ...
分类:其他好文   时间:2020-07-11 12:40:12    阅读次数:49
key-value结构排序:给定一个字符串,统计每个字符出现频率,先按value降序,再按key升序
对于key-value结构的排序第一种:lambda表达式第二种:函数第三种:类对()的重载,仿函数形式#include<iostream>#include<vector>#include<unordered_map>#include<string>#include<algorithm>usingnamespacestd;boolcmp(
分类:编程语言   时间:2020-07-11 11:13:38    阅读次数:112
重新整理数据结构与算法(c#)—— 二叉树排序树[二十二]
前言 什么是二叉堆排序呢? 就是上面这种,一个节点大于左节点,但是小于右节点,再我写的例子中会写出大于等于右节点。 那么如何让一个数组进行变成这种二叉树呢? 其实只要有规律就很简单。 第一个元素(0)作为根节点。 第二个元素如果比第一个元素则判断是否有左节点,如果没有左节点,就是它的左节点,如果有左 ...
分类:编程语言   时间:2020-07-11 00:19:46    阅读次数:87
Java日志第5天 2020.7.10
第三章 这些算法很有用 3.1 比较值 1.最大值 *两个数的比较 *for循环遍历 *两两比较 *分为两部分比较 2.最小值 最小值的算法与最大值类似 *for循环遍历 两两比较 分成两部分 3.平均值 3.2 数字排序 1.冒泡排序 2.选择排序 3.选择排序 今天就先到这里吧,后面的快速排序实 ...
分类:编程语言   时间:2020-07-10 13:27:53    阅读次数:57
leetcode刷题总结351-400
354. 俄罗斯套娃信封问题 描述: 思路:先按照第一个维度排序,第一维度相同时,第二维度降序。然后对第二维度进行最长上升子序列。(第二维度降序是为了避免同长度下的嵌套) 355. 设计推特 描述: 思路:通过一个map来维护一个用户发的推文。(推文对象之间用链表连接)。然后用一个优先队列得出10个 ...
分类:其他好文   时间:2020-07-10 12:59:48    阅读次数:79
重新整理数据结构与算法(c#)—— 堆排序[二十一]
前言 将下面按照从小到大排序: int[] arr = { 4, 6, 8, 5, 9 }; 这时候可以通过冒泡排序,计数排序等。 但是一但数据arr很大,那么会产生排序过于缓慢,堆排序就是一个很好的解决方案。 树的堆,有最大堆和最小堆。 看下最大堆: 它是这样子的,就是说一个节点的大小一定大于它的 ...
分类:编程语言   时间:2020-07-10 11:22:48    阅读次数:72
堆排序
思路(大根堆): 部分堆排序: 从某根节点开始,看左右孩子的值是否大于根节点。 若根节点不为最大值,找到左右孩子的最大值和根节点交换。 交换后破坏了下一级堆,则需要对下一级堆继续用以上方法排序。 建立堆: 从最后一个节点开始,找到父节点,从父节点遍历到根节点,用堆排序,最后就建立一个排好序的堆。 空 ...
分类:编程语言   时间:2020-07-10 00:40:31    阅读次数:71
java学习第四天7/9
一. 今天学习了一些算法; 求最小值,最大值,平均值 接着学了几种排序方法 1.冒泡排序 (1)逐一比较数组中响铃的两个元素,如果后面的数字小于前面的数字,就交换先后元素; (2)经过一个轮次的比较,一定有一个最大的排在最后的位置; (3)每次比较省下的元素,经过n-1次比较 2.选择排序 (1)将 ...
分类:编程语言   时间:2020-07-10 00:06:28    阅读次数:56
7540条   上一页 1 ... 21 22 23 24 25 ... 754 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!