数据结构
-
【数据结构】线性表(一)线性表的定义及其基本操作(顺序表插入、删除、查找、修改)
目录 一、线性表 1. 线性表的定义 2. 线性表的要素 二、线性表的基本操作 三、线性表的顺序存储结构 1. 定义 2. 顺序表的操作 a. 插入操作 b. 删除操作…
-
算法基础之最短Hamilton路径
最短Hamilton路径 核心思想: 数位dp 用二进制数 存当前所有点 遍历过为1 遍历i图中j点 若j点走过 则求j点路径长度 f[state][j] = f[state_k]…
-
弗洛伊德(Floyd)算法求个顶点之间最短路径问题(详解+图解)
弗洛伊德算法,是一种用于寻找图形中所有最短路径的算法。它的基本思想是通过一定的规则逐步更新每个节点的最短路径估计值,直到每个节点的最短路径估计值收敛为止。 具体来说,弗洛伊德算法通…
-
Unity 面试篇|(六)数据结构和算法篇 【全面总结 | 持续更新】
目录 1. 十大排序简述 2. 请写一个方法判断一个整数是奇数还是偶数。 3. 请写一个方法判断一个整数是否是2的n次方。 4. 对字节变量,其二进制表示法中求有多少个1,如 00…
-
数据结构及单链表例题(下)
上次我们已经了解了单链表的数据结构定义以及创建单链表的两种方法,这节介绍几道例题. 文章目录 前言 一、已知L为带头结点的单链表,请依照递归思想实现下列运算 二、单链表访问第i个数…
-
数据结构——队列(Queue)
目录 1.队列的介绍 2.队列工程 2.1 队列的定义 2.1.1 数组实现队列 2.1.2 单链表实现队列 2.2 队列的函数接口 2.2.1 队列的初始化 2.2.2 队列的数…
-
面试经典150题(93-95)
leetcode 150道题 计划花两个月时候刷完,今天(第五十三天)完成了3道(93-95)150: 93.(53. 最大子数组和)题目描述: 给你一个整数数组 nums ,请你…
-
力扣刷题-二叉树-合并二叉树
617.合并二叉树(经典) 合并二叉树是操作两棵树的题目里面很经典的,如何对两棵树遍历以及处理? 给定两个二叉树,想象当你将它们中的一个覆盖到另一个上时,两个二叉树的一些节点便会重…
-
【数据结构基础】之链表介绍,生动形象,通俗易懂,算法入门必看
前言 本文为 数据结构基础【链表】 相关知识,下边将对链表概念,单链表,双链表,循环链表,Java中链表的使用等进行详尽介绍~ 📌博主主页:´Code_Wang的主…
-
【算法】——全排列算法讲解
前言: 今天,我给大家讲解的是关于全排列算。我会从三个方面去进行展开: 首先,我会给大家分析关于全排列算法的思想和定义; 紧接着通过手动实现出一个全排列代码来带大家见见是怎么实现的…
-
单链表简单实现
单链表实现 一、为什么会存在单链表? 二、什么是单链表? 三、单链表结构定义 四、单链表的基本操作 1、 创建结点 2、 销毁链表 3、 打印链表 4、 尾插节点 5、 头插结点 …
-
C语言 最短路径 迪杰斯特拉(Dijkstra)算法
前言 迪杰斯特拉(Dijkstra)算法是由荷兰计算机科学家狄克斯特拉于1959年提出的,因此又叫狄克斯特拉算法。是从一个顶点到其余各顶点的最短路径算法,解决的是有权图中单源最短路…
-
[LeetCode]-283. 移动零-1089. 复写零
目录 283. 移动零 描述 解析 代码 1089. 复写零 描述 解析 代码 283. 移动零 283. 移动零https://leetcode.cn/problems/mov…
-
详解数据结构——二叉排序树
目录 二叉排序树 二叉排序树的查找 二叉排序树的插入 二叉排序树的删除 查找时间效率分析 二叉排序树 二叉排序树,又称二叉查找树(BST,Binary Search Tre…
-
时间复杂度–算法的时间效率衡量标准
导语:时间复杂度的基本概念 很多同学在程序开发和算法调优的过程中,经常会接触到时间复杂度的概念,那究竟什么是时间复杂度呢? 在回答这个问题之前,我们…
