![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
经典算法
文章平均质量分 87
Killing Vibe
阿里云星级博主,华为云云享专家,ICIAP国际会议EI索引收录一作,中国大学生计算机设计大赛国家级二等奖,研究生电子设计竞赛省级一等奖,大学生科技创新与职业技能竞赛省级二等奖,北大核心某期刊一作
展开
-
递归的思路
文章目录前言一、什么是方法递归?二、使用步骤1.引入库2.读入数据总结前言今天给老铁们回顾一下递归的思路以及方法,也是给自己的一个归纳总结。一、什么是方法递归?所谓的方法递归,就是在一个方法(函数)执行的内部,自己调用了自己的过程,称之为 “递归” 。二、使用步骤1.引入库代码如下(示例):import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as snsimport原创 2022-04-08 00:16:01 · 3368 阅读 · 54 评论 -
归并排序图解(通俗易懂)
归并排序图解,优化后的归并排序,扩展,面试题原创 2022-10-28 04:30:00 · 2275 阅读 · 5 评论 -
快速排序图解(两种思想)
快速排序算法两种思路原创 2022-10-25 04:30:00 · 1794 阅读 · 8 评论 -
希尔排序图解
希尔排序图解原创 2022-10-24 16:30:00 · 727 阅读 · 4 评论 -
插入排序图解
直接插入排序与折半插入排序图解原创 2022-10-24 04:30:00 · 1352 阅读 · 17 评论 -
选择排序图解
直接选择排序与双向选择排序图解原创 2022-10-23 22:02:48 · 507 阅读 · 3 评论 -
Top K问题【转载】
从伪代码可以看到,二分查找,一个大的问题,可以用一个mid元素,分成左半区,右半区两个子问题。画外音:n个元素扫一遍,假设运气很差,每次都入堆调整,调整时间复杂度为堆的高度,即lg(k),故整体时间复杂度是n*lg(k)。面试中,TopK,是问得比较多的几个问题之一,到底有几种方法,这些方案里蕴含的优化思路究竟是怎么样的,今天和大家聊一聊。如果i小于k,则说明说明第k大的元素在arr[i]的右边,于是只递归arr[i+1, n]里第k-i大的元素即可;堆,是求TopK的经典算法,那还有没有。转载 2022-09-28 22:54:20 · 239 阅读 · 5 评论 -
在线OJ注意事项
OJ中Java的注意事项,以及常见问题原创 2022-09-28 10:01:32 · 2246 阅读 · 16 评论 -
【LeetCode】169.多数元素(三种解法)
问题描述这是LeetCode上的一道算法题,博主整理了三种解题思路和方法,希望可以帮助大家提升算法的思维。给定一个大小为 n 的数组,找到其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。你可以假设数组是非空的,并且给定的数组总是存在多数元素。示例 1:输入:[3,2,3]输出:3示例 2:输入:[2,2,1,1,1,2,2]输出:2进阶:尝试设计时间复杂度为 O(n)、空间复杂度为 O(1) 的算法解决此问题。来源:力扣(LeetCode)链接:169原创 2022-04-14 12:12:40 · 2178 阅读 · 30 评论 -
【LeetCode】136.只出现一次的数字(三种解法)
问题描述这是LeetCode上的一道算法题,笔者整理了三种解题思路和方法,希望可以帮助大家提升算法的思维。给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1]输出: 1示例 2:输入: [4,1,2,1,2]输出: 4来源:力扣(LeetCode)链接:136.只出现一次的数字一、 解法1(双指针双引用暴力求解):注意题设,不能使原创 2022-04-13 10:45:05 · 1176 阅读 · 25 评论 -
递归求解汉诺塔问题
前言博主之前有写过关于递归问题的思维模式:递归的思路下面将用这种思维模式来求解经典汉诺塔问题。一、问题描述汉诺塔(又称河内塔)问题是源于印度一个古老传说。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。问应该如何操作?玩法如下:1.有三根杆子A,B,C。A杆上有若干碟子2.每次移动一块碟子,小的只能叠在大的上原创 2022-04-12 22:43:03 · 2080 阅读 · 21 评论