![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 69
简单算法入门
起灵人
纸上得来终觉浅,绝知此事要躬行。
展开
-
【算法】二进制中1的位数(汉明重量)
算法 二进制中1的位数 汉明重量原创 2021-08-03 23:16:41 · 125 阅读 · 0 评论 -
【算法】0~n-1中缺失的数字
0~n-1中缺失的数字原创 2021-07-28 13:24:01 · 148 阅读 · 0 评论 -
【算法】动态规划合集
动态规划 打家劫舍 种花问题 最大子序和原创 2021-07-27 22:23:54 · 203 阅读 · 1 评论 -
【算法】双指针合集
合并排序数组原创 2021-07-26 13:01:42 · 111 阅读 · 0 评论 -
【算法】摩尔投票法
数组处理 摩尔算法 map原创 2021-07-06 22:39:40 · 113 阅读 · 2 评论 -
【算法】进制转换合集
进制转换原创 2021-07-05 22:55:57 · 91 阅读 · 0 评论 -
【算法】内存溢出问题
算法 内存溢出 进位原创 2021-07-04 22:41:57 · 288 阅读 · 2 评论 -
【算法】力扣菜鸟
1.两个内部已排序数组,如arr1=[1,3,4,6,7],arr2=[3,4,6,8,9],将两个数组合并为一个新的排序数组。$arr1=[1,3,4,5,9];$arr2=[2,4,6,7,9];function myMerge($arr1,$arr2){ $i=0;$j=0; $int = array(); while($i<count($arr1) && $j<count($arr2)){ $int[] = $arr1[$i]<$arr原创 2021-06-04 16:51:13 · 110 阅读 · 0 评论 -
【算法】二分查找合集
二分查找及其应用原创 2021-05-07 22:30:16 · 151 阅读 · 0 评论 -
【算法】超详细插入排序实现过程、时间、空间复杂度计算
插入排序原理就像玩扑克牌,右手从桌子上【待排序数组】抽一张牌后递给左手【已排序数组】,左手拿到第一张牌,之后每次抽牌就扫描左手数组,找到相应位置并插入。实现过程:示例数组:$array=[-5,17,1,2,4,5,9,3,0,1,12,-10],下划线表示左手数组放到左手中已排序的部分,未划线是桌子上待排序部分,起牌顺序是固定的,它和选择排序的不同在于选择排序类似所有牌摊在桌上,每次从桌上选择最小(大)的牌放到左手,而插入排序是每次顺序起一张牌,在左手中选择它合适的位置并插入。抽第1张牌:-5原创 2021-03-24 22:20:59 · 416 阅读 · 0 评论 -
【算法】超详细冒泡排序实现过程、时间、空间复杂度计算、优化方法
冒泡排序是一种重复遍历元素列的排序算法,依次对比,如果顺序与预期不符就将它们位置交换,每遍历一遍元素列中最大/最小元素会被慢慢浮到最顶端,过程类似鱼吐泡泡,慢慢浮上水面,故名。我举例以最详尽的方式讲述冒泡排序的实现过程,及其代码实现、时间复杂度推算。我有一个数组,$array=[8,4,1,5,9,3,0];需要用冒泡排序将其升序排列。第一次遍历:第一次对比结果:4,8,1,5,9,3,0 发现8比4大,位置与预期不符,交换第二次对比结果:4,1,8,5,9,3,0 8比...原创 2021-03-21 21:47:00 · 2145 阅读 · 1 评论 -
【算法】超详细选择排序、二元选择排序实现过程、时间、空间复杂度计算
选择排序是先从元素列中找到最大/最小的元素(升序时找到最小值,降序时找到最大值),将它放在第一位,再从剩余元素中找到最大/最小,将它排到第二位,直到所有元素都被排序。本文以最详尽的方式讲述选择排序的实现过程,及其代码实现、时间、空间复杂度推算、优化方法。推算过程:以升序为例,选择排序每次假定需要排序的第一位数字即为最小值,向后依次对比,出现比它更小的值,就交换位置,直到这一列全部对比完,确定最小值并将它放到第一位,再进行第二次遍历,找到第二小的值。以数组$array=[8,4,1,5,9,3原创 2021-03-23 21:45:24 · 557 阅读 · 0 评论