首页
学习
活动
专区
圈层
工具
发布
首页标签数据结构与算法

#数据结构与算法

数据结构与算法——链式二叉树

我不是呆头

递归分为两个阶段,分别是递推与回归,先递推,然后回归。 定义:递归其实是⼀种解决问题的⽅法,在C语⾔中,递归就是函数自己调用自己。 思想:把⼀个⼤型复杂问题...

4410

数据结构与算法——堆

我不是呆头

树是⼀种⾮线性的数据结构,它是由 n(n>=0) 个有限结点组成⼀个具有层次关系的集合。把它叫做树是因为它看起来像⼀棵倒挂的树,也就是说它是根朝上,⽽叶朝下的。

5310

数据结构与算法——栈和队列

我不是呆头

栈:⼀种特殊的线性表,其只允许在固定的⼀端进⾏插⼊和删除元素操作。进⾏数据插⼊和删除操作的⼀端称为栈顶,另⼀端称为栈底。栈中的数据元素遵守后进先出的原则。(先进...

9210

数据结构与算法——双向链表

我不是呆头

带头是指存在一个头结点(哨兵位),但是不存储任何有效数据,用来占位子 注意:单链表是不带头的,方便理解,有时候称为第一个结点为头结点,实际上是没有头结点的

6510

数据结构与算法——单链表(下)

我不是呆头

遍历:pcur指向头结点,循环,当pucr不为空进入循环,pucr里面指向的数据为要查找的值的时候就返回pcur否则将pucr下一个结点的地址赋值给pcur然后...

9310

数据结构与算法——单链表(上)

我不是呆头

“车头” :plist是个变量,存储的是个地址,说明他是个指针 “车厢” : 相当于一个结点,不同于顺序表的是,它不仅存储数据,还存储了一个地址(或是个指...

8410

数据结构与算法—顺序表(续)

我不是呆头

解释: 定义一个i在size下标位置,每当头插一个数据,将i-1的数据赋值给i;然后i–,继续上述操作,直到i = 0时,i-1没有数据放到i中,所以跳出循...

9210

数据结构与算法—顺序表和链表(1)

我不是呆头

线性表(linear list)是n个具有相同特性的数据元素的有限序列。线性表是⼀种在实际中⼴泛使⽤的数据结构,常⻅的线性表:顺序表、链表、栈、队列、字符串…线...

7210

数据结构与算法—算法复杂度

我不是呆头

数据结构(Data Structure)是计算机存储、组织数据的⽅式,指相互之间存在⼀种或多种特定关系的数据元素的集合。没有⼀种单⼀的数据结构对所有⽤途都有⽤,...

7010

可视化图解算法74:最小花费爬楼梯

用户11589437

给定一个整数数组 cost ,其中 cost[i]是从楼梯第i 个台阶向上爬需要支付的费用,下标从0开始。一旦你支付此费用,即可选择向上爬一个或者两个台阶。

8410

[Java数据结构与算法] 哈希表(Hash Table)

木井巳

这导致查找元素时,需要进行多次关键码之间的比较,搜索的效率取决于搜索过程中的比较次数。

10910

[Java数据结构与算法] 二叉搜索树(BinarySearchTree)

木井巳

1. cur 的左树为空且右树不为空时,我们需要判断 cur 是树根节点还是 prev 的左/右子树:

10610

[Java数据结构与算法] 详解Map和Set接口

木井巳

Map 和 Set 是一种专门用来搜索的容器或数据结构,其搜索的效率与其具体的实例化子类有关。

10310

[Java数据结构与算法]详解排序算法

木井巳

排序是计算机科学中最基础且重要的主题之一,无论是学术研究还是实际开发,都离不开排序算法的应用。

19310

[Java数据结构与算法]深入理解优先级队列与堆

木井巳

比如操作系统中进程调度、游戏中的事件处理、数据流中的高频元素统计等,这些场景都需要优先级高的元素能够优先被处理。

15810

[Java数据结构与算法]深入理解二叉树

木井巳

二叉树是计算机科学中最基础且重要的数据结构之一,不仅是许多高级数据结构(如AVL树、红黑树、堆等)的基础,也是面试中频繁考察的知识点。本文将系统性地介绍二叉树的...

20210

[Java数据结构与算法]深入理解栈与队列

木井巳

数据结构是编程的基石,无论是算法设计还是系统开发,都离不开对数据结构的深入理解。栈和队列作为两种最基础的线性数据结构,广泛应用于各种场景中。本文将系统性地介绍栈...

17410

[Java数据结构与算法]经典链表面试题详解

木井巳

13610

[Java数据结构与算法]模拟实现链表

木井巳

链表是一种物理存储结构上非连续的存储结构,数据元素的逻辑顺序是通过链表中的引用链接次序实现的。

14410

[Java数据结构与算法]ArrayList详解与实际应用

木井巳

ArrayList是Java集合框架中的一个重要类,位于java.util包中。它实现了List接口,底层基于数组实现,可以根据需要动态扩容。

10110
领券