
数据结构基础
文章平均质量分 64
WIN赢
一只理科生的程序日常:八仙过海,各显神通
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【双指针技巧秒杀七道链表题目】
tips:因为链表本身是有指针的,所以单个节点就可以直接当指针使用。原创 2025-02-17 16:43:23 · 186 阅读 · 0 评论 -
【时间复杂度和空间复杂度】
空间复杂度是指算法在运行过程中消耗的内存资源量级,通常用输入规模(如数组长度、链表长度等)来表示。原创 2025-02-17 17:02:15 · 590 阅读 · 0 评论 -
【算法解题】
种种数据结构,皆为(顺序存储)和(链式存储)的变换。数据结构的关键点在于,即增删查改等基本操作。种种算法,皆为。穷举的关键点在于。原创 2025-02-17 11:05:04 · 289 阅读 · 0 评论 -
【环形数组技巧及实现】
环形数组技巧利用求模(余数)运算(5%2=1),将普通数组变成逻辑上的环形数组,可以让我们用 O(1) 的时间在数组头部增删元素。环形数组的原理就是取余,当 i+1为数组的最后一个元素的时候, i+1 对 len(arr)取模,就成了0,然后会重新进入数组的头部,就在逻辑上形成了一个环形数组环形数组的关键在于,它维护了两个指针start和endstart指向第一个有效元素的索引,end指向最后一个有效元素的下一个位置索引。这样,当我们在数组头部添加或删除元素时,只需要移动start。原创 2025-02-16 21:39:42 · 355 阅读 · 0 评论 -
【数据结构基础_链表】
编程语言标准库一般使用的都是双链表而非单链表。而双链表节点有两个指针,prev。编程语言标准库一般都会提供。字段只有 int 类型。,而力扣的单链表节点的。指针,指向下一个节点;指向前一个节点,next。原创 2025-02-13 18:36:43 · 321 阅读 · 0 评论 -
【一文搞懂数组】
(3)数组元素用整个数组的名字和它自己在数组中的顺序位置来表示。例如a[0]表示名字为a的数组中的第一个元素。a[1]表示名字为a的数组中的第二个元素,以此类推。(1)数组是相同数据类型的元素的集合(int的数组不能存float,float也不能存double)数组是连续的内存空间和相同类型的数据。它存储相同类型的一组数据,最大的特点就是下标和随机访问,缺点就是插入和删除都很慢,(2) 数组中各元素的存储是有先后顺序的,它们在内存中按照这个顺序连续存放到一起。本质上是一样的,都是数组。不需要管扩容等操作。原创 2025-02-11 17:36:26 · 914 阅读 · 0 评论 -
【计算机原理】
【代码】【计算机原理】原创 2025-01-24 14:52:28 · 191 阅读 · 0 评论 -
【数据结构基础_数组】
为了方便理解,暂且可以把「数组」分为两大类,一类是「静态数组」,一类是「动态数组」。操作数组元素(静态数组在创建的时候就要确定数组的元素类型和元素数量。只有在 C++、Java、Golang 这类语言中才提供了创建静态数组的方式,类似 Python、JavaScript 这类语言并没有提供静态数组的定义方式。但是我们一般是直接用动态数组一个 int 在计算机内存中占 4 字节,也就是总共 40 字节。原创 2025-01-24 14:37:34 · 251 阅读 · 0 评论