摘要: 打算用1个月的时间,系统的学习一下清华大学邓俊辉老师的《数据结构与算法》,不仅仅学习相关知识点,更想把握算法和数据结构的深刻内涵。 一.绪论 [toc] 1.1 如何理解计算? 研究计算,在于挖掘其中的规律和技巧,实现更高效和低耗的计算,可以看作一个闭环。 下面这句话很好的阐述了计算的本质。所谓计算 阅读全文
posted @ 2020-03-14 18:48 depth-perception 阅读(1194) 评论(0) 推荐(0)
摘要: 题目 思路 首先从题干中找出关键信息: 原地删除 不使用额外的数组空间 本题与leetcode26( "传送门" )、leetcode80( "传送门" )类似,继续采用 快慢指针法 。设定快慢指针:fats和slow,让fast去探路,根据是否找到目标数,然后决定slow要不要前进,此处fast不 阅读全文
posted @ 2020-03-12 10:08 depth-perception 阅读(152) 评论(0) 推荐(0)
摘要: 题目 思路 首先从题干中找出关键信息: 排序数组 原地删除 不使用额外的数组空间 本题和leetcode26类似(详情点击 "传送门" ),涉及数组元素的删除问题,依旧快慢指针的思路。不同的是,可以最多允许2个重复元素,因此, 应检查快指针指向的元素和慢指针指针所指向单元的前一个元素是否相等 。相等 阅读全文
posted @ 2020-03-11 22:53 depth-perception 阅读(135) 评论(0) 推荐(0)
摘要: 题目 思路 首先从题干中找出关键信息: 排序数组 原地删除 不使用额外的数组空间 对于数组来说,在尾部进行元素的增删,时间复杂度只有o(1),但在数组中间或者开头进行元素的增删,由于涉及到元素的搬运,时间复杂度就变为o(n).因此对于一般的数组处理问题,要尽可能的在尾部对元素进行处理,这样就可以避免 阅读全文
posted @ 2020-03-11 20:47 depth-perception 阅读(149) 评论(0) 推荐(0)