首页 > 编程语言 >JS数据结构与算法

JS数据结构与算法

时间:2022-10-07 23:36:17浏览次数:39  
标签:遍历 自定义 JS 链表 算法 搜索 排序 哈希 数据结构

 

1.重要性

什么是数据结构?

数据结构和算法的重要性

 

2.线性结构

2.1数组

  1. 数组使用的API

 

2.2栈

  1. 自定义栈
  2. 栈的应用

 

2.3队列

  1. 自定义队列
  2. 优先级队列
  3. 队列的应用

 

2.4链表

  1. 链表原理
  2. 自定义链表
  3. 双向链表

 

 

 

3.哈希表

3.1 哈希表理论

  1. 哈希表介绍
  2. 认识哈希化
  3. 地址的冲突

3.3.1链地址法

3.3.2开饭地址法

 

 

3.2 自定义哈希表

  1. 哈希函数
  2. 哈希表实现
  3. 哈希表扩容
  4. 容量质数

 

4.树结构

4.1树的相关概念

  1. 树的基本概念
  2. 二叉树的概念

 

4.2二叉搜索树

  1. 二叉搜索树的概念

 

4.3树的遍历

  1. 中序遍历
  2. 先序遍历
  3. 后序遍历

 

4.4二叉搜索树的删除

4.5二叉树的补充

 

 

5.图结构

5.1 图相关概念

 

5.2图的表示

  1. 领接矩阵
  2. 邻接表
  3. 关联矩阵

 

5.3自定义图

 

5.4图的遍历

  1. 广度优先搜索
  2. 深度优先搜索

 

 

6.排序&搜索

6.1简单排序

  1. 冒泡排序
  2. 选择排序
  3. 插入排序

 

6.2高级排序

  1. 希尔排序
  2. 快速排序

 

标签:遍历,自定义,JS,链表,算法,搜索,排序,哈希,数据结构
From: https://www.cnblogs.com/hechunfeng/p/16767503.html

相关文章

  • 算法练习-第十天【字符串】
    字符串459.重复的子字符串参考:代码随想录思考判断一个字符串s是否包含子串,可以将2个s首尾相连,组合成t=s+s(剔除首尾字符),如果字符串s存在字串,那么t一定存在字符串s。......
  • LeetCode 阶乘后的零算法题解 All In One
    LeetCode阶乘后的零算法题解AllInOnefactorial阶乘后的零原理图解实现factorial计算后面0的个数,除0!本身的0阶乘!https://www.shuxuele.com/num......
  • 简单理解slot算法和shadow DOM
    阅读完这篇博客你会有以下收获:slot算法是什么?shadowDOM是什么?vueslot机制与w3cwebcomponent规范的shadowDOM渲染结果有何异同?slot算法Theslottingalgorithmassign......
  • 如何理解package.json中的proxy字段?
    入职新公司以来,第一个月接手vue项目,第二个月接手angularjs项目,第三个月加入react重构项目。心生感叹:业务驱动式学习是一种高效率的学习方式,保持好奇心,在业务中快速成长!新项......
  • 深入理解JSON.stringify()
    就我目前4年(实习了1年,965了1年,996了2年,算3年感觉少了,说是4年老司机也不为过吧。)的工作经验来看,JSON.stringify一般有以下用途:深拷贝:深拷贝引用类型的数据序列化:服务端存储......
  • 【算法篇】总结了四种链表,单链表,双向链表,循环链表,双向循环链表,顺手刷了两道面试题
    今日目录:1:能够说出链表的存储结构和特点2:能够说出链表的几种分类及各自的存储结构3:能说出链表和数组的差异4:完成实战演练题目5:完成综合案例1、概念及存储结构问题:思考一下动......
  • 听说你要卷算法,我已被各种
    今日目标:1:能够说出什么是数据结构,什么是算法2:能说出大O时间复杂度是怎么得来的3:能够说出时间复杂度的几个分析原则并加以实际应用4:能够说出常见的几种时间复杂度O(1),O(n),O(logn),O......
  • tsconfig.json的esModuleInterop使用场景是怎样的?
    问题场景npm包改造前,仅支持esmnpm包改造后,既支持esm,又支持cjs为什么改造后,还是会报错?如何理解ts编译配置esModuleInterop?总结问题场景遇到一个很有趣的场景,cjs中需要引入原......
  • 浅谈浏览器架构、单线程js、事件循环、消息队列、宏任务和微任务
    关键词:​​多进程、单线程、事件循环、消息队列、宏任务、微任务​​看到这些词仿佛比较让人摸不着头脑,其实在我们的日常开发中,早就和他们打过交道了。我来举几个常见的例子......
  • 排序算法
    1.冒泡排序  2.选择排序 3.插入排序  4.快速排序 ......