Javascript数据结构与算法
文章平均质量分 85
GISer_Jinger
南师大GIS
在读研二学生
励志成为大中厂外企的一名会后端会GIS的前端工程师
在CSDN还是要有大大的dream,现实里就好好加油吧!
展开
-
Javascript常见数据结构——二叉树
二叉树(Binary Tree)是一种重要的数据结构,每个节点最多只有两个子节点,分别称为左子节点和右子节点。二叉树广泛用于树形数据的处理,比如表达式解析、优先级队列、文件系统结构等。本文将详细介绍二叉树的结构、常见操作,并通过 JavaScript 示例代码进行演示。原创 2024-11-12 13:28:56 · 315 阅读 · 0 评论 -
Javascript常见数据结构及其应用场景
数组是由一组按顺序排列的值组成,每个值都有一个对应的索引(下标),可以通过索引访问和修改数组中的元素。原创 2024-11-07 21:32:36 · 1017 阅读 · 0 评论 -
Javascript数据结构与算法——栈与队列
栈与队列原创 2024-11-02 15:29:56 · 247 阅读 · 0 评论 -
Javascript——KMP算法
KMP算法,全称Knuth-Morris-Pratt算法,是一种用于字符串匹配的算法,由Donald Knuth、Vaughan Pratt和James Morris发明。该算法的主要思想是通过预处理模式字符串,构建一个部分匹配表(也称为失配函数),然后利用该表进行模式匹配,从而实现高效的字符串匹配。因此,掌握KMP算法并灵活运用在实际项目中是非常有益的。表或前缀函数)用于存储部分匹配信息,以便在模式串与文本串不匹配时,模式串能够跳过一些不必要的字符比较,直接跳转到可能匹配的位置。原创 2024-10-30 11:36:00 · 461 阅读 · 0 评论 -
Javascript数据结构——哈希表常见应用
哈希表(Hash Table)是一种常见的数据结构,用于高效地存储和查找键值对。以下列出常见的7个与哈希表相关的算法题目,并附上代码示例和说明。原创 2024-10-25 22:03:26 · 305 阅读 · 0 评论 -
Javascript数据结构——哈希表
哈希表的基本思路是,设要存储的元素个数为n,设置一个长度为m(m≥n)的连续内存单元,以每个元素的关键字k为自变量,通过哈希函数把k映射为内存单元的地址(下标),并把该元素存储在这个内存单元中,如此构造的存储结构称为哈希表。简单来说,哈希表就像是一个巨大的书架,每个书架格都有一个编号(哈希值),而每个编号下都可以存放一本书(键值对)。当你想要找一本书时,只需知道它的编号,就能迅速定位到它所在的位置。原创 2024-10-24 10:35:26 · 694 阅读 · 0 评论 -
Javascript算法——链表
在JavaScript中,链表作为一种常见的基础数据结构,具有节点动态分配、内存使用灵活等特点,特别适用于插入和删除操作频繁的场景。总之,链表在JavaScript中具有广泛的应用场景和算法题目。掌握链表的基本结构和操作是实现这些算法和应用的基础。通过不断练习和实践,可以加深对链表的理解和掌握。:判断链表中是否存在环形结构,这通常可以使用快慢指针的技巧来实现。:从头到尾遍历链表,处理每个节点的值或指针。:将两个有序链表合并成一个有序链表。原创 2024-10-22 20:09:28 · 1010 阅读 · 0 评论 -
Javascript链表模拟
在JavaScript中,我们可以使用对象和函数来创建链表结构。链表是一种常见的数据结构,它由一系列节点组成,每个节点包含数据部分和指向下一个节点的指针。链表主要有单向链表和双向链表两种类型,这里我们先介绍单向链表。原创 2024-10-21 17:21:24 · 814 阅读 · 0 评论 -
Javascript算法(滑块窗口、螺旋矩阵)
JS滑块窗口算法,即滑动窗口算法(Sliding Window),在JavaScript中的应用场景主要集中在处理字符串和数组等数据结构中的子串或子数组问题。这种算法通过维护一个窗口,并移动窗口的两个边界(左右指针)来优化暴力枚举的时间复杂度,从而提高算法的执行效率。,要看rows和columns的大小,如果rows>columns,则是中间列,相反,则是中间行.,则矩阵最中间位置不只是[mid][mid],而是会留下来一个特殊的中间行或者中间列,同样的原理,本题的mid计算也存在上述差异;原创 2024-10-20 19:34:21 · 603 阅读 · 0 评论 -
Javascript算法——双指针法移除元素、数组去重、比较含退格字符、有序数组平方
暴力求解法(两层for循环),length单词拼写错误❌二次嵌套for的length设置。return位置❌ ,核心基础。双指针法(一层for循环)原创 2024-10-17 11:39:06 · 544 阅读 · 0 评论 -
Javascript算法——二分查找
找左边界时,需将right赋给左边界,所以在target=num[mid]时更新left并更新右边界情况二,通过条件判断// 记录一下leftBorder没有被赋值的情况if(nums[middle] >= target){ // 寻找左边界,nums[middle] == target的时候更新right} else {// 记录一下rightBorder没有被赋值的情况。原创 2024-10-16 16:18:47 · 680 阅读 · 0 评论
分享