首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
柠檬茶味
掘友等级
学生
|
中国农业大学
A salted fish.
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
0
文章 0
沸点 0
赞
0
返回
|
搜索文章
最新
热门
排序算法专题-基数排序
基数排序也是一种基于桶的排序算法,原理是将整数按位数切割成不同的数字,然后按每个位数分别比较,当所有位比较完成之后,排序完成。 这个算法原理还是很简单的,问题是如何来有效的来实现这个算法。bucket[index].nums.nums.通过简单的分析该代码。可以发现基数排序...
排序算法专题-桶排序
图片来源:桶排序 而后在桶内完成排序,最后将各个桶连接起来,完成排序。该算法很容易理解,但是其高效与否取决于两个部分,一个是映射空间的划定,最好的情况是n个数组均匀的划分到k个桶中,最坏的情况是输入的数组分配到了同一个桶中;第二个是桶内排序算法的选择,本文基于python的内...
排序算法专题-计数排序
计数排序是一种在数值小于100以内十分高效的排序算法,时间复杂度为O(n),原理十分简单,是一个桶的简单运用(后面有机会再详细介绍介绍桶)。比如我们排序元素的数值分布在1-100,那么首先遍历一遍数组,记录1-100每个数值出现的个数,比如1,10,1,12,那么1出现了2次...
排序算法专题-堆排序
堆排序,顾名思义,就是一种基于堆这种数据结构来实现排序的一种算法,那么何谓堆呢?简单点说,堆是一个近似完全二叉树的结构,同时满足即子结点的键值或索引总是小于(或者大于)它的父节点,由此而生,堆分为两种,分别是小顶堆和大顶堆。大顶堆:每个节点的值都大于或等于其子节点的值,在堆排...
leetcode刷题日记-课程表 III
这里有 n 门不同的在线课程,按从 1 到 n 编号。给你一个数组 courses ,其中 courses[i] = [durationi, lastDayi] 表示第 i 门课将会 持续 上 durationi 天课,并且必须在不晚于 lastDayi 的时候完成。 你的学期从...
leetcode刷题日记-喧闹和富有
有一组 n 个人作为实验对象,从 0 到 n - 1 编号,其中每个人都有不同数目的钱,以及不同程度的安静值(quietness)。为了方便起见,我们将编号为 x 的人简称为 "person x "。 给你一个数组 richer ,其中 richer[i] = [ai, bi] ...
排序算法专题-快速排序
快速排序是冒泡排序算法基础上改进的进阶版排序算法,他使用分治法把一个序列基于一个基准分成两个子序列,比如left均小于基准,right均大于基准,通过再次选择基准对left和right序列进行递归的划分,直到划分的数组长度为1或者0,由于划分依据是在序列中选择一个基准,即每次...
快速幂问题详解
本文讲讲快速幂问题,之前在一篇超级次方的博客简单提到过,链接如下。但是没有深入讲讲,只是简单介绍了一下快速幂的思想。 快速幂的思想是分治,在超级次方一文里面的分治是按不同的位数来进行分治,比如我们要算5234的值,如果我们直接算234个5相乘,计算次数是很多的,是235次,...
leetcode刷题日记-保持城市天际线
在二维数组grid中,grid[i][j]代表位于某处的建筑物的高度。 我们被允许增加任何数量(不同建筑物的数量可能不同)的建筑物的高度。 高度 0 也被认为是建筑物。 最后,从新数组的所有四个方向(即顶部,底部,左侧和右侧)观看的“天际线”必须与原始数组的天际线相同。 城市的天...
排序算法专题-归并排序
归并排序是一种十分经典的冲破O(n2)时间复杂度的排序算法,该算法是基于分治的思想,讲解算法原理之前,先看一下下面这张图。图片来源:【算法】排序算法之归并排序 上图就是归并算法的一个简单示例。该算法就是每次将数组递归拆解为两部分,直到所有部分包含元素为1,之后递归的将各个...
下一页
个人成就
文章被点赞
1
文章被阅读
6,761
掘力值
60
关注了
0
关注者
0
收藏集
0
关注标签
9
加入于
2022-02-28