近来有小伙伴问我:刷leetcode真的有用吗,觉得收益很小,越刷越迷茫了... 诚然每个人刷题的目的不一样,233酱还不是为了能水几篇文章... 当然不止。我觉得刷题是一件有意思的事,就像小猫小狗咬自己尾巴,玩弄的不亦乐乎。比喻可能不太恰当,是有种沉迷小游戏的感觉。可是在艰难打野的过程中,我们不要 ...
分类:
编程语言 时间:
2020-07-22 01:58:01
阅读次数:
64
三种时间复杂度为O(n)的排序算法:桶排序、计数排序、基数排序 这三种排序算法都不涉及元素之间的比较操作,也叫做线性排序(Linear sort) 桶排序 核心思想 将要排序的数据分散到有序的桶中,分别对桶中的数据进行排序。排序好了之后,按照桶的顺序依次取出,就得到排好序的数据了。 时间复杂度 时间 ...
分类:
编程语言 时间:
2020-07-21 23:13:45
阅读次数:
92
内部排序:数据记录在内存中进行排序外部排序:待排序文件较大,需要访问外存常见的内部排序:插入排序(直接插入、折半插入、希尔排序)、交换排序(冒泡、快排)、选择排序(简单选择、堆排序)、归并排序(2路归并)、基数排序外排:归并排序(多路归并)、各种内排的性能比较:插入排序每次将一个待排序的记录按关键字大小插入到前面已排好序的子序列中,直到全部记录插入完成每一轮能够确定一个最终位置的记录,某时刻的状态
分类:
编程语言 时间:
2020-07-19 16:23:30
阅读次数:
50
题目来源:leetcode75 颜色分类 题目描述: 给定一个包含红色、白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。 此题中,我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。 注意: 不能使用代码库中的排序函数来解决这道题 ...
分类:
其他好文 时间:
2020-07-17 13:44:07
阅读次数:
51
百万考生分数如何排序 - 计数排序 关注 「码哥字节」,这里有算法系列、大数据存储系列、Spring 系列、源码架构拆解系列、面试系列……敬请期待。设置星标不迷路 其实计数排序是桶排序的一种特殊情况。 桶排序的核心思想是将要排序的数据分到几个有序的桶里,每个桶里的数据再单独进行排序。桶内排完序之后, ...
分类:
编程语言 时间:
2020-07-13 13:31:53
阅读次数:
73
一、排序的概念:将一系列数据按照某个关键字进行递增或递减的顺序排列起来 二、排序的方式: 1、插入排序: 直接插入排序: 一 一比对 折半插入排序:在已经拍好的序列中插入,适合初始记录无序、n较大的情况 希尔排序:待排序的关键字基本有序->效率较高 分组插入,先分割(相隔某个增量的记录),对每组进行 ...
分类:
其他好文 时间:
2020-07-12 22:30:17
阅读次数:
65
本章学习了排序这一操作,排序方法分为两大类: 内部排序:不需要访问外存,分为插入类、交换类、选择类、归并类(2-路归并排序)和分配类(基数排序)。 外部排序:不可能在内存中完成。 (一)插入排序 1、直接插入排序 稳定排序,更适合于初始记录基本有序(正序)的情况 1 void InsertSort( ...
分类:
其他好文 时间:
2020-07-12 18:58:36
阅读次数:
54
前言 将下面按照从小到大排序: int[] arr = { 4, 6, 8, 5, 9 }; 这时候可以通过冒泡排序,计数排序等。 但是一但数据arr很大,那么会产生排序过于缓慢,堆排序就是一个很好的解决方案。 树的堆,有最大堆和最小堆。 看下最大堆: 它是这样子的,就是说一个节点的大小一定大于它的 ...
分类:
编程语言 时间:
2020-07-10 11:22:48
阅读次数:
72
摘要:华为云GaussDB(for mysql)是华为云自主研发的最新一代云原生数据库,采用计算存储分离、日志即数据的架构设计。具备极致可靠、极致性价比、多为扩展、完全可信等诸多特性。 一 、GaussDB(for mysql)简介 华为云GaussDB(for mysql)是华为云自主研发的最新一 ...
分类:
数据库 时间:
2020-07-06 12:59:27
阅读次数:
64
基数排序(Java) 博客说明 文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总,如有什么地方侵权,请联系本人删除,谢谢! 基数排序(桶排序)介绍 基数排序(radix sort)属于“分配式排序”(distribution sort),又称“桶子法”(bucket sort)或b ...
分类:
编程语言 时间:
2020-06-27 15:53:56
阅读次数:
54