logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

【基础算法总结】哈希表/set/map篇

哈希思想是算法中一个十分重要的思想,体现的是一种映射关系,而哈希表就是基于哈希思想实现的存储数据的容器。哈希表的作用是快速查找某个元素,时间复杂度为O(1),时间复杂度为O(n)。使用哈希一般有两种方式:(1)STL中的 unordered系列容器。(2)用数组模拟简易哈希表。这种情况一般用于处理字符串中的"字符"或是当数据范围很小的时候使用。下面将通过若干道题目进一步体会哈希表的使用。

文章图片
#散列表#算法#哈希算法
swiftUI框架中级

swiftUI中的进阶学习,持续更新中.......

#swiftui#java#android
【C++】:红黑树深度剖析 --- 手撕红黑树!

就是太过追求绝对平衡,比如在插入时要维护其绝对平衡,旋转次数太多,在删除时甚至有可能要一直旋转到根位置,使之性能低下。本篇文章介绍的红黑树也是一种平衡树,是通过改变节点颜色以及旋转操作,使之接近平衡。红黑树比AVL树的用途更加广泛,在一些方面效率甚至要优于AVL树,并且 map/set 的底层封装用的也是红黑树。红黑树的节点结构与AVL树的大致相同,只是AVL树中有节点的颜色,没有平衡因子。//枚

文章图片
#c++#开发语言
【C/排序算法】:快速排序和冒泡排序

快速排序的三种思想虽然实现方式不同,但是最终结果都是以key为基准值把整个数组分割成左右两个子序列,左子序列中所有元素均小于基准值,右子序列中所有元素均大于基准值。在我们日常写快速排序算法时,那两种优化方式三数取中,最小区间优化并不是一定要有,可以根据情况自主添加。//当左右子区间不存在,或只有一个元素时,//就不需要递归了,排序完成return;//这是排一趟,只排好了一个数//左边有坑,右边e

文章图片
#算法#数据结构#排序算法
【C/数据结构与算法】:树和二叉树

则这个二叉树就是完全二叉树。(3)对这两种二叉树的有关数据的推导。

文章图片
#数据结构#c语言
【C/数据结构与算法】:链表的实现(单向链表+双向链表)

1.顺序表的问题和思考问题:中间/头部的插入删除,时间复杂度为O(N)。增容需要申请新空间,拷贝数据,释放旧空间,会有不小的消耗。增容一般是呈2倍的增长,势必会有一定的空间浪费。例如当前容量为100,满了以后增容到200,我们再继续插入了5个数据,后面没有数据插入了,那么就浪费了95个数据空间。思考:如何解决以上问题呢?下面给出了链表的结构来看看。

文章图片
#数据结构#链表#c语言
【基础算法总结】前缀和

前缀和也是基础算法之一,它一般应用于快速求出某个连续区间的和/积。前缀和一般包括一维前缀和,二维前缀和,其实它的做题流程有一点点像动态规划的感觉。前缀和算法的时间复杂度是O(1)。前缀和与二分查找类似,也是有固定模板的,下面的前两题分别就是一维/二维的前缀和模板题。通过上面若干道题目要掌握使用前缀和的两个步骤:一是预处理前缀和数组,这里要先明确 dp[i][j]的含义,再推导递推公式,二是使用前缀

文章图片
#算法#leetcode
【基础算法总结】滑动窗口

滑动窗口算法也是基础算法之一,它的本质是一对"同向双指针"。当我们分析的对象是⼀段连续的区间(子数组/子串),使用暴力解法发现两个指针可以不回退的一直往前走,并且可以利用单调性解决问题时,就可以使用滑动窗口。时间复杂度是O(N)如何使用滑动窗口呢?(1)初始化 left = 0, right = 0。用 left 和 right来控制这个"窗口"(2)进"窗口"(3)判断,是否要出"窗口",循环(

文章图片
#算法#开发语言
【基础算法总结】双指针

双指针算法是基础算法之一,一般用于涉及数组分块/数组划分这类问题。这里的"指针"是利用数组下标或是一个数来充当的。在遍历过程中,两个指针的位置:cur:从左往右扫描数组,遍历数组。dest:指向已处理的区间内,非0元素的最后一个位置。如下图所以两个指针把数组分成了三个区间双指针算法是一种基础,但是十分经典的算法。通过上面的若干道题可知,"双指针"使用起来是十分灵活的,有时代指数组下标,有时也可以代

文章图片
#算法#leetcode
【基础算法总结】链表篇

有关链表的算法题也是一类常见并且经典的题型,这些题要使用数据结构中我们手搓的链表结构,也要使用STL中的 list 容器。下面是几点常用操作的总结(1)善于画图。(2)引入虚拟头结点。方便处理边界情况,就是当没节点第一次头插或尾插的时候的那个判断,引入虚拟头结点就可以避免这个判断(写成 ptail = newHead)。(3) 不要吝啬空间,大胆定义变量。(4)快慢双指针的使用。主要应用是判环,找

文章图片
#算法#链表#数据结构
    共 20 条
  • 1
  • 2
  • 请选择