数据结构与算法
文章平均质量分 96
起伏羊
少壮不努力 老大徒伤悲
展开
-
【数据结构与算法——TypeScript】图结构(Graph)
❤️🔥 那么,什么是图呢?我们会发现,上面的节点(其实图中叫顶点Vertex)之间的关系,是不能使用树来表示使用任何的树结构都不可以模拟。这个时候,我们就可以使用图来模拟它们。❤️🔥 图通常有什么特点呢?💚一组顶点:通常用 V (Vertex) 表示顶点的集合💚一组边:通常用 E (Edge) 表示边的集合✓ 边是顶点和顶点之间的连线✓ 边可以是有向的,也可以是无向的。✓ 比如A — B,通常表示无向。A --> B,通常表示有向我们在学习树的时候,树有很多的。原创 2023-08-14 17:42:21 · 720 阅读 · 0 评论 -
【数据结构与算法——TypeScript】树结构Tree
🟢二叉搜索树(BST,Binary Search Tree),也称二叉排序树或二叉查找树。二叉搜索树是一颗二叉树,可以为空非空左子树的所有键值小于其根节点的键值非空右子树的所有键值大于其根节点的键值左、右子树本身也都是二叉搜索树下面哪些是二叉搜索树,哪些不是?✅ 二叉搜索树的特点就是相对较小的值总是保存在左节点上,相对较大的值总是保存在右节点上✅ 查找效率高,这也是二叉搜索树中,搜索的来源。原创 2023-08-13 18:10:53 · 1181 阅读 · 0 评论 -
【数据结构与算法——TypeScript】哈希表
- 哈希表是一种非常重要的数据结构,但是很多学习编程的人一直搞不懂哈希表到底是如何实现的。 - 口 在这一章节中,我门就一点点来实现一个自己的哈希表。 - 通过实现来理解哈希表背后的原理和它的优势。- 几乎所有的编程语言都有直接或者间接的应用这种数据结构。- 哈希表通常是**基于数组**进行实现的,但是相对于数组,它也很多的优势: - 口 它可以提供非常快速的插入-甽除-查找操作: - 口 无论多少数据,插入和删除值都接近常量的时间:即O(1)的时间与杂度。实际上,只需要几个机器指令即可原创 2023-08-08 13:55:53 · 929 阅读 · 0 评论 -
【数据结构与算法——TypeScript】算法的复杂度分析、 数组和链表的对比
🖥 在具体一个程序中的案例:让我们用两种不同算法查找数组中(数组有序)给定元素的复杂度顺序查找这种算法从头到尾遍历整个数组,依次比较每个元素和给定元素的值如果找到相等的元素,则返回下标;如果遍历完整个数组都没找到,则返回 -1。/**- 顺序查找- @param array 查找的数组- @param 查找的元素- @returns 查找到的索引,未找到返回-1i ++) {二分查找这种算法假设数组是有序的,每次选择数组中间的元素与给定元素进行比较。如果相等,则返回下标;如果。原创 2023-08-04 16:35:46 · 930 阅读 · 0 评论 -
【数据结构与算法——TypeScript】数组、栈、队列、链表
什么是算法(Algorithm)?算法(Algorithm)的认识:解决问题的过程中,不仅仅 数据的存储方式会影响效率,算法的优劣也会影响效率;前端算法学习:**算法的通俗**理解 - **Algorithm**这个单词本意就是 **解决问题的办法/步骤逻辑**。 - **数据结构的实现,离不开算法**。原创 2023-08-02 17:18:07 · 1259 阅读 · 1 评论