• 《数据结构与算法》知识点(一)

    时间:2024-03-20 15:45:57

    第一章 绪论基本概念和术语:1.数据、数据元素、数据项和数据类型数据:所有能被输入到计算机中,且能被计算机处理的符号的集合。是计算机操作的对象的总称。数据元素:数据(集合)中的一个“个体”,数据及结构中讨论的基本单位数据项:数据的不可分割的最小单位。一个数据元素可由若干个数据项组成。数据类型:在一种...

  • 数据结构与算法(C/C++版)【串】

    时间:2024-03-05 07:43:49

    第四章《串、数组》(一)串  数据结构中提到的串,即字符串,由 n 个字符组成的一个整体( n >= 0 )。这 n 个字符可以由字母、数字或者其他字符组成...

  • 数据结构与算法——C语言描述

    时间:2024-03-05 07:42:55

    数据结构与算法三大内容:逻辑结构+存储结构+数据操作+应用实践。线性表线性表是最基本、最简单、也是最常用的一种数据结构。在线性表中数据元素之间的关系是线性,数据元素可以看成...

  • Rust 数据结构与算法:3栈:用栈实现符号匹配

    时间:2024-03-01 20:47:20

    1、符号匹配 如: (5+6)×(7+8)/(4+3)、{ { ( [ ] [ ])}}、(a+b)(c*d)func() 等各类语句的符号匹配。 这里我们关注的不是数字而是括号,因为括号更改了操作优先级,限定了语言的语义,这是非常重要的。如果括号不完整,那么整个表达式就是错的。 括号都必须以成对匹...

  • java数据结构与算法刷题-----LeetCode538. 把二叉搜索树转换为累加树

    时间:2024-03-01 08:29:24

    /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode() {} * ...

  • 数据结构与算法-排序(十)桶排序(Bucket Sort)

    时间:2024-02-29 12:34:10

    摘要桶排序和基数排序类似,相当于基数排序的另外一种逻辑。它是将取值范围当做创建桶的数量,桶的长度就是序列的大小。通过处理比较元素的数值,把元素放在桶的特定位置,然后遍历桶,就可以得到有序的序列。逻辑创建一定数量的桶(数组或者链表)。制定规则将序列中的元素均匀地分布在不同的桶中。然后对每个桶内排序,最...

  • 数据结构与算法:线性数据结构

    时间:2024-02-24 20:16:37

    1. 深入理解数组、链表、栈和队列 在计算机科学和软件工程领域,数据结构是构建算法和解决实际问题的基础。其中,数组、链表、栈和队列是最基本、最常用的数据结构之一。本文将深入探讨这些数据结构的定义、特性以及基本操作,帮助读者更好地理解和应用它们。 2. 数组 (Array) 2.1 定义和特性 数组是...

  • 算法与数据结构 时间复杂度

    时间:2024-02-24 07:56:37

    复杂度是衡量一个算法效率高低的一个重要的因素,一般分为时间复杂度和空间复杂度。空间复杂度,一般在排序等 抽象数据类型的运算和物理实现 有关。本篇主要介绍时间复杂度的...

  • 【数据结构与算法】二叉树的 Morris 遍历(前序、中序、后序)

    时间:2024-02-22 20:19:09

    前置说明不了解二叉树非递归遍历的可以看我之前的文章【数据结构与算法】二叉树模板及例题Morris 遍历概述Morris 遍历是一种遍历二叉树的方式,并且时间复杂度O...

  • 数据结构与算法——贪心算法

    时间:2024-02-20 22:32:36

    应用场景-集合覆盖问题贪心算法可以解决很多场景的问题,这里以集合覆盖问题为例。假设存在下面需要付费的广播台,以及广播台信号可以覆盖的地区。如何选择最少的广播台,让所...

  • 数据结构与算法(一) 时间复杂度、空间复杂度计算

    时间:2024-02-17 19:59:14

    一、时间复杂度计算1、 时间复杂度的意义复杂度分析是整个算法学习的精髓,只要掌握了它,数据结构和算法的内容基本上就掌握了一半测试结果非常依赖测试环境测试结果受数据规模的影响很大所以,我们需要一个不用具体的测试数据来测试,就可以粗略地估计算法的执行效率的方法,即时间、空间复杂度分析方法。2、大 O 复...

  • Rust 数据结构与算法:1算法分析之乱序字符串检查

    时间:2024-02-17 12:07:53

    Rust 数据结构与算法 一、算法分析 算法是通用的旨在解决某种问题的指令列表。 算法分析是基于算法使用的资源量来进行比较的。之所以说一个算法比另一个算法好,原因就在于前者在使用资源方面更有效率,或者说前者使用了更少的资源。 ●算法使用的空间指的是内存消耗。算法所需的内存通常由问题本身的规模和性质决...

  • python算法与数据结构-数据结构中常用树的介绍(45)

    时间:2024-02-01 22:27:17

    一、树的定义树是一种非线性的数据结构,是由n(n >=0)个结点组成的有限集合。如果n==0,树为空树。如果n>0,树有一个特定的结点,根结点根结点只有直接后继,没有直接前驱。除根结点以外的其他结点划分为m(m>=0)个互不相交的有限集合,T0,T1,T2,...,Tm-1,每个结...

  • 数据结构与算法:递归

    时间:2024-02-01 15:09:33

    什么是递归?程序调用自身的编程技巧称为递归( recursion)。递归做为一种算法在程序设计语言中广泛应用。 一个过程或函数在其定义或说明中有直接或间接调...

  • 数据结构与算法——基础篇(一)

    时间:2024-02-01 10:40:57

    前置问题经典问题与算法8皇后问题(92种摆法)——回溯算法字符串匹配问题——KMP算法(取代暴力匹配)汉诺塔游戏问题——分治算法马踏棋盘算法也称骑士周游问题——图的...

  • 【数据结构与算法】归并排序

    时间:2024-01-30 21:07:50

    概念过程分解:将n 个元素分成个含n/2 个元素的子序列;解决:对两个子序列递归地排序合并:合并两个已排序的子序列以得到排序结果和快排不同的是归并的分解较为随意重点...

  • 『数据结构与算法』链表(单链表、双链表、环形链表)

    时间:2024-01-28 14:14:17

    微信搜索:码农StayUp主页地址:https://gozhuyinglong.github.io源码分享:https://github.com/gozhu...

  • 数据结构与算法:堆排序

    时间:2024-01-27 12:07:51

    堆堆是一个近似完全二叉树完全二叉树)的结构,并同时满足堆积的性质:即子节点的键值或索引总是小于(或者大于)它的父节点。大顶堆:子节点的键值或索引总是小于(或...

  • 数据结构与算法:查找算法

    时间:2024-01-27 11:40:29

    查找算法查找( Search)是指从一批记录中找出满足指定条件的某一记录的过程,查找又称为检索。查找算法广泛应用于各类应用程序中。因此,一个有效的查找算法往往可以大...

  • JS数据结构与算法 - 二叉树(一)基本算法

    时间:2024-01-26 18:06:19

    仅供JavaScript刷题参考用。二叉查找树和平衡二叉树其它树:满二叉树、完全二叉树、完美二叉树、哈弗曼树、二叉查找树BST、平衡二叉树AVL了解:红黑树...