From 0d8908bbd8f06600e5b0513099583ed2b0871a05 Mon Sep 17 00:00:00 2001 From: "142vip.cn" <2237221210@qq.com> Date: Mon, 3 Feb 2025 20:25:48 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D`bundler-vite`?= =?UTF-8?q?=E6=A8=A1=E5=9D=97=E7=89=88=E6=9C=AC=E5=BC=82=E5=B8=B8=20(#132)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/.vuepress/public/mind-map/ccp-map.html | 18 +- docs/.vuepress/public/mind-map/cn-map.html | 18 +- docs/.vuepress/public/mind-map/ds-map.html | 18 +- docs/.vuepress/public/mind-map/os-map.html | 18 +- package.json | 2 +- pnpm-lock.yaml | 1085 +++++++++---------- 6 files changed, 526 insertions(+), 633 deletions(-) diff --git a/docs/.vuepress/public/mind-map/ccp-map.html b/docs/.vuepress/public/mind-map/ccp-map.html index 7d31c30..36550d9 100644 --- a/docs/.vuepress/public/mind-map/ccp-map.html +++ b/docs/.vuepress/public/mind-map/ccp-map.html @@ -16,11 +16,11 @@ height: 100vh; } - + - + const markmap = getMarkmap(); + window.mm = markmap.Markmap.create( + "svg#mindmap", + (getOptions || markmap.deriveOptions)(jsonOptions), + root2 + ); + })(() => window.markmap,null,{"content":"计算机组成原理","children":[{"content":"引论","children":[],"payload":{"tag":"h2","lines":"23,24"}},{"content":"数据的表示和运算","children":[],"payload":{"tag":"h2","lines":"25,26"}},{"content":"存储系统","children":[],"payload":{"tag":"h2","lines":"27,28"}},{"content":"指令系统","children":[],"payload":{"tag":"h2","lines":"29,30"}},{"content":"中央处理器","children":[],"payload":{"tag":"h2","lines":"31,32"}},{"content":"总线","children":[],"payload":{"tag":"h2","lines":"33,34"}},{"content":"输入输出系统","children":[],"payload":{"tag":"h2","lines":"35,36"}},{"content":"一些总结","children":[],"payload":{"tag":"h2","lines":"37,38"}}],"payload":{"tag":"h1","lines":"6,7"}},null) diff --git a/docs/.vuepress/public/mind-map/cn-map.html b/docs/.vuepress/public/mind-map/cn-map.html index 766e6a9..3a6b8ce 100644 --- a/docs/.vuepress/public/mind-map/cn-map.html +++ b/docs/.vuepress/public/mind-map/cn-map.html @@ -16,11 +16,11 @@ height: 100vh; } - + - + const markmap = getMarkmap(); + window.mm = markmap.Markmap.create( + "svg#mindmap", + (getOptions || markmap.deriveOptions)(jsonOptions), + root2 + ); + })(() => window.markmap,null,{"content":"计算机网络","children":[{"content":"体系结构","children":[],"payload":{"tag":"h2","lines":"20,21"}},{"content":"物理层","children":[],"payload":{"tag":"h2","lines":"22,23"}},{"content":"数据链路层","children":[],"payload":{"tag":"h2","lines":"24,25"}},{"content":"网络层","children":[],"payload":{"tag":"h2","lines":"26,27"}},{"content":"传输层","children":[],"payload":{"tag":"h2","lines":"28,29"}},{"content":"应用层","children":[],"payload":{"tag":"h2","lines":"30,31"}},{"content":"一些总结","children":[],"payload":{"tag":"h2","lines":"32,33"}}],"payload":{"tag":"h1","lines":"6,7"}},null) diff --git a/docs/.vuepress/public/mind-map/ds-map.html b/docs/.vuepress/public/mind-map/ds-map.html index e9860ce..6215696 100644 --- a/docs/.vuepress/public/mind-map/ds-map.html +++ b/docs/.vuepress/public/mind-map/ds-map.html @@ -16,11 +16,11 @@ height: 100vh; } - + - + const markmap = getMarkmap(); + window.mm = markmap.Markmap.create( + "svg#mindmap", + (getOptions || markmap.deriveOptions)(jsonOptions), + root2 + ); + })(() => window.markmap,null,{"content":"数据结构","children":[{"content":"基础入门","children":[{"content":"基本概念","children":[{"content":"\n

数据

","children":[{"content":"信息的载体","children":[],"payload":{"tag":"li","lines":"29,30"}},{"content":"客观事物属性的数、字符以及所有能够输入到计算机包中并且被计算机程序识别和处理的集合","children":[],"payload":{"tag":"li","lines":"30,32"}}],"payload":{"tag":"li","lines":"27,32"}},{"content":"\n

数据元素

","children":[{"content":"数据的基本单位","children":[],"payload":{"tag":"li","lines":"34,35"}},{"content":"一个数据元素由若干个数据项组成","children":[],"payload":{"tag":"li","lines":"35,36"}},{"content":"数据项是构成数组元素的最小单位,且不可分割","children":[],"payload":{"tag":"li","lines":"36,38"}}],"payload":{"tag":"li","lines":"32,38"}},{"content":"\n

数据对象

","children":[{"content":"具有相同性质的数据元素的集合","children":[],"payload":{"tag":"li","lines":"40,41"}},{"content":"数据的子集","children":[],"payload":{"tag":"li","lines":"41,43"}}],"payload":{"tag":"li","lines":"38,43"}},{"content":"\n

数据类型

","children":[{"content":"原子类型:不可再分的数据类型","children":[],"payload":{"tag":"li","lines":"45,46"}},{"content":"结构类型:可以分解成若干分量(成分)的数据类型","children":[],"payload":{"tag":"li","lines":"46,47"}},{"content":"抽象数据类型:抽象出具组织和其相关的操作","children":[],"payload":{"tag":"li","lines":"47,49"}}],"payload":{"tag":"li","lines":"43,49"}},{"content":"\n

抽象数据类型(ADT)

","children":[{"content":"定义:一个数学模型以及定义在该模型上的一组操作","children":[],"payload":{"tag":"li","lines":"51,52"}},{"content":"特点:与计算机内部如何表示和实现是没有关系","children":[],"payload":{"tag":"li","lines":"52,53"}},{"content":"作用:数据封装和信息隐藏,让实现与使用相分离","children":[],"payload":{"tag":"li","lines":"53,54"}},{"content":"注意:不论内部结构如何变化,只要其数学特性不变,就不会影响到外部的使用","children":[],"payload":{"tag":"li","lines":"54,56"}}],"payload":{"tag":"li","lines":"49,56"}}],"payload":{"tag":"h3","lines":"25,26"}},{"content":"数据结构(三要素)","children":[{"content":"\n

逻辑结构

","children":[{"content":"线性结构:线性表、栈、队列、串、数组...","children":[],"payload":{"tag":"li","lines":"60,61"}},{"content":"非线性结构:树、图、集合...","children":[],"payload":{"tag":"li","lines":"61,62"}},{"content":"集合:除了“同属于一个集合”的关系外,别无其他关系。","children":[],"payload":{"tag":"li","lines":"62,63"}},{"content":"线性结构:只存在一对一的关系。","children":[],"payload":{"tag":"li","lines":"63,64"}},{"content":"树形结构:存在一对多的关系。","children":[],"payload":{"tag":"li","lines":"64,65"}},{"content":"图状结构和网状结构:存在多对多的关系。","children":[],"payload":{"tag":"li","lines":"65,67"}}],"payload":{"tag":"li","lines":"58,67"}},{"content":"\n

存储(物理)结构

","children":[{"content":"\n

顺序存储

","children":[{"content":"\n

逻辑上相邻的元素存储在物理位置上也相邻的存储单元里,元素之间的关系由存储单元的邻接关系来体现

","children":[],"payload":{"tag":"li","lines":"71,72"}},{"content":"\n

优点

","children":[{"content":"可以实现随机存取","children":[],"payload":{"tag":"li","lines":"74,75"}},{"content":"元素占用最少的存储空间","children":[],"payload":{"tag":"li","lines":"75,77"}}],"payload":{"tag":"li","lines":"72,77"}},{"content":"\n

缺点

","children":[{"content":"只能使用相邻的一整块存储单元,依赖于物理结构相邻","children":[],"payload":{"tag":"li","lines":"79,80"}},{"content":"容易产生外部碎片","children":[],"payload":{"tag":"li","lines":"80,82"}}],"payload":{"tag":"li","lines":"77,82"}}],"payload":{"tag":"li","lines":"69,82"}},{"content":"\n

链式存储

","children":[{"content":"\n

与顺序存储不同,链式存储不要求逻辑上相邻的元素在物理位置上也相邻

","children":[],"payload":{"tag":"li","lines":"84,85"}},{"content":"\n

优点

","children":[{"content":"不会出现碎片现象","children":[],"payload":{"tag":"li","lines":"87,88"}},{"content":"充分利用所有存储单元","children":[],"payload":{"tag":"li","lines":"88,90"}}],"payload":{"tag":"li","lines":"85,90"}},{"content":"\n

缺点

","children":[{"content":"除了存储元素外,还需要额外存储指针,会占用额外的存储空间(结合数据库索引学习)","children":[],"payload":{"tag":"li","lines":"92,93"}},{"content":"链式存储,只能实现顺序存取,不能实现随机存取(指针的遍历)","children":[],"payload":{"tag":"li","lines":"93,95"}}],"payload":{"tag":"li","lines":"90,95"}}],"payload":{"tag":"li","lines":"82,95"}},{"content":"\n

索引存储

","children":[{"content":"\n

存放数据元素和元素间关系的存储方式,在存储元素信息的同时,还需要建立附加的索引表

","children":[],"payload":{"tag":"li","lines":"97,98"}},{"content":"\n

优点

","children":[{"content":"检索快(就好比字典有了目录,查询就很快了)","children":[],"payload":{"tag":"li","lines":"100,102"}}],"payload":{"tag":"li","lines":"98,102"}},{"content":"\n

缺点

","children":[{"content":"增加了索引表,占用较多的存储空间(典型的空间换时间策略)","children":[],"payload":{"tag":"li","lines":"104,105"}},{"content":"增加、删除数据时,需要对应修改索引表,花费更多时间","children":[],"payload":{"tag":"li","lines":"105,107"}}],"payload":{"tag":"li","lines":"102,107"}}],"payload":{"tag":"li","lines":"95,107"}},{"content":"\n

散列(Hash)存储

","children":[{"content":"\n

根据元素的关键字直接通过散列(Hash)函数计算出元素的存储地址。

","children":[],"payload":{"tag":"li","lines":"109,110"}},{"content":"\n

优点

","children":[{"content":"检索快","children":[],"payload":{"tag":"li","lines":"112,113"}},{"content":"添加、删除元素结点操作快(获取元素地址直接,整体时间就少了)","children":[],"payload":{"tag":"li","lines":"113,115"}}],"payload":{"tag":"li","lines":"110,115"}},{"content":"\n

缺点

","children":[{"content":"非常依赖于散列函数","children":[],"payload":{"tag":"li","lines":"117,118"}},{"content":"会出现散列冲突(主要依赖与散列函数,散列函数不好就很容易出现散列冲突)","children":[],"payload":{"tag":"li","lines":"118,119"}},{"content":"出现散列冲突时,解决冲突就会增加时间和空间上的开销","children":[],"payload":{"tag":"li","lines":"119,121"}}],"payload":{"tag":"li","lines":"115,121"}}],"payload":{"tag":"li","lines":"107,121"}}],"payload":{"tag":"li","lines":"67,121"}},{"content":"\n

数据的运算

","children":[{"content":"运算的定义:针对逻辑结构,指出运算的功能","children":[],"payload":{"tag":"li","lines":"123,124"}},{"content":"运算的实现:针对存储结构,指出运算的具体操作步骤","children":[],"payload":{"tag":"li","lines":"124,126"}}],"payload":{"tag":"li","lines":"121,126"}}],"payload":{"tag":"h3","lines":"56,57"}},{"content":"算法与算法评价","children":[{"content":"\n

算法

","children":[{"content":"\n

定义

","children":[{"content":"对特定问题求解步骤的一种描述","children":[],"payload":{"tag":"li","lines":"132,133"}},{"content":"是指令的有序集合","children":[],"payload":{"tag":"li","lines":"133,134"}},{"content":"每一条指令表示一个或多个操作","children":[],"payload":{"tag":"li","lines":"134,136"}}],"payload":{"tag":"li","lines":"130,136"}},{"content":"\n

五大特性

","children":[{"content":"有穷性:执行有穷步后结束、在有穷时间内完成","children":[],"payload":{"tag":"li","lines":"138,139"}},{"content":"确定性:每条指令的含义明确,不会产生二义性,对相同的输入只能得出相同的结果","children":[],"payload":{"tag":"li","lines":"139,140"}},{"content":"可行性:算法中描述的操作都是可以通过已经实现的基本运算执行有限次来实现的","children":[],"payload":{"tag":"li","lines":"140,141"}},{"content":"输入:有零个或者多个输入,输入取决于某个特定的对象的集合","children":[],"payload":{"tag":"li","lines":"141,142"}},{"content":"输出:有一个或者多个输出,输出是和输入有着某种特定关系的量","children":[],"payload":{"tag":"li","lines":"142,144"}}],"payload":{"tag":"li","lines":"136,144"}},{"content":"\n

好算法追求的目标

","children":[{"content":"\n

正确性:需要正确的解决求解问题

","children":[],"payload":{"tag":"li","lines":"146,147"}},{"content":"\n

可读性:便于理解

","children":[],"payload":{"tag":"li","lines":"147,148"}},{"content":"\n

健壮性:在输入非法数据时,算法也能适当地做出反应或进行处理,而不会产生莫名奇妙的输出结果

","children":[],"payload":{"tag":"li","lines":"148,149"}},{"content":"\n

效率与低存储量需求

","children":[{"content":"效率:算法执行的时间--->时间复杂度","children":[],"payload":{"tag":"li","lines":"151,152"}},{"content":"存储量需求:算法那执行过程中所有要的最大存储空间--->空间复杂度","children":[],"payload":{"tag":"li","lines":"152,154"}}],"payload":{"tag":"li","lines":"149,154"}}],"payload":{"tag":"li","lines":"144,154"}}],"payload":{"tag":"li","lines":"128,154"}},{"content":"\n

算法的评价

","children":[{"content":"\n

程序语句频度:程序语句在算法中被重复执行的次数

","children":[],"payload":{"tag":"li","lines":"156,157"}},{"content":"\n

时间复杂度O(n)

","children":[{"content":"最坏空间复杂度:最坏情况下,算法的时间复杂度","children":[],"payload":{"tag":"li","lines":"159,160"}},{"content":"平均空间复杂度:所有可能输入实例在同等概率出现的情况下,算法的期望运行时间","children":[],"payload":{"tag":"li","lines":"160,161"}},{"content":"最好空间复杂度:最好的情况下,算法的时间复杂度","children":[],"payload":{"tag":"li","lines":"161,163"}}],"payload":{"tag":"li","lines":"157,163"}},{"content":"\n

空间复杂度S(n)

","children":[{"content":"用来定义算法运行过程中需要耗费的存储空间","children":[],"payload":{"tag":"li","lines":"165,166"}},{"content":"渐进空间复杂度也被称为空间复杂度
\n记作:S(n)=O(g(n))","children":[],"payload":{"tag":"li","lines":"166,169"}}],"payload":{"tag":"li","lines":"163,169"}}],"payload":{"tag":"li","lines":"154,169"}}],"payload":{"tag":"h3","lines":"126,127"}}],"payload":{"tag":"h2","lines":"23,24"}},{"content":"线性表","children":[{"content":"定义和基本操作","children":[{"content":"\n

基本概念

","children":[{"content":"\n

定义:线性表是具有相同数据类型的n(n≥0)个数据元素的有限序列

","children":[],"payload":{"tag":"li","lines":"175,176"}},{"content":"\n

逻辑特性

","children":[{"content":"除表头元素外,线性表中每个元素有且仅有一个","children":[],"payload":{"tag":"li","lines":"178,179"}},{"content":"除表尾元素外,线性表中每个元素有且仅有一个直接后继","children":[],"payload":{"tag":"li","lines":"179,181"}}],"payload":{"tag":"li","lines":"176,181"}},{"content":"\n

基本特点

","children":[{"content":"元素个数有限","children":[],"payload":{"tag":"li","lines":"183,184"}},{"content":"逻辑上具有顺序性","children":[],"payload":{"tag":"li","lines":"184,185"}},{"content":"每个元素都是单个元素","children":[],"payload":{"tag":"li","lines":"185,186"}},{"content":"数据类型都相同,元素存储空间大小一致","children":[],"payload":{"tag":"li","lines":"186,187"}},{"content":"元素具有抽象性,只讨论逻辑关系","children":[],"payload":{"tag":"li","lines":"187,189"}}],"payload":{"tag":"li","lines":"181,189"}}],"payload":{"tag":"li","lines":"173,189"}},{"content":"\n

基本操作

","children":[{"content":"InitList(&L): 初始化表。构造空的线性表","children":[],"payload":{"tag":"li","lines":"191,192"}},{"content":"Length(L):获取表的长度。返回线性表L的长度,即表中的数据元素个数","children":[],"payload":{"tag":"li","lines":"192,193"}},{"content":"LocateElem(L,e):按值查找操作。在表L中国查找具有给定关键字的元素","children":[],"payload":{"tag":"li","lines":"193,194"}},{"content":"GetElem(L,i):按位查找操作。获取表中第i个位置的元素的值","children":[],"payload":{"tag":"li","lines":"194,195"}},{"content":"ListInsert(&L,i,e):插入操作。在表的第i个位置上插入指定元素e","children":[],"payload":{"tag":"li","lines":"195,196"}},{"content":"ListDelete(&L,i,&e):删除操作。删除表中第i个位置的元素,并用e返回删除元素的值","children":[],"payload":{"tag":"li","lines":"196,197"}},{"content":"PrintList(L):输出操作。按照前后顺序(如:1、2....n)输出线性表的所有元素值","children":[],"payload":{"tag":"li","lines":"197,198"}},{"content":"Empty(L):判空操作。当表L为空,则返回true,否则返回false","children":[],"payload":{"tag":"li","lines":"198,199"}},{"content":"DestoryList(&L):销毁操作。将线性表销毁,释放线性表L所占用的内存空间","children":[],"payload":{"tag":"li","lines":"199,201"}}],"payload":{"tag":"li","lines":"189,201"}}],"payload":{"tag":"h3","lines":"171,172"}},{"content":"顺序表示","children":[{"content":"\n

基础概念

","children":[{"content":"\n

定义

","children":[{"content":"顺序表:顺序存储的线性表","children":[],"payload":{"tag":"li","lines":"207,208"}},{"content":"顺序表中的元素的逻辑顺序与实际的物理位置相同","children":[],"payload":{"tag":"li","lines":"208,209"}},{"content":"线性表中的元素的位序是从1开始的,数组中的元素的下标是从0开始的","children":[],"payload":{"tag":"li","lines":"209,211"}}],"payload":{"tag":"li","lines":"205,211"}},{"content":"\n

存储分配

","children":[{"content":"静态分配:数组的大小和空间都是实现确定好的,一旦存储空间占满就会产生溢出,直接导致程序崩溃","children":[],"payload":{"tag":"li","lines":"213,214"}},{"content":"动态分配:存储数据的空间在程序执行过程中通过动态存储分配语句分配的,即便是数据空间占满,也可以另外开辟一块更大的空间,来替换原来的存储空间","children":[],"payload":{"tag":"li","lines":"214,215"}},{"content":"malloc()函数: 指针型函数,返回的指针指向该分配域的开头的位置。作用是在内存的动态存储区中分配一个长度为size的连续空间","children":[],"payload":{"tag":"li","lines":"215,216"}},{"content":"动态分配不是链式存储,而是属于顺序存储结构,动态分配的物理结构没有改变,依然是随机存取的方式。只是分配的空间大小可以在运行时决定","children":[],"payload":{"tag":"li","lines":"216,218"}}],"payload":{"tag":"li","lines":"211,218"}},{"content":"\n

重要特点

","children":[{"content":"随机访问【重要】","children":[],"payload":{"tag":"li","lines":"220,221"}},{"content":"存储密度高","children":[],"payload":{"tag":"li","lines":"221,222"}},{"content":"逻辑上相邻的元素物理上也相邻","children":[],"payload":{"tag":"li","lines":"222,224"}}],"payload":{"tag":"li","lines":"218,224"}}],"payload":{"tag":"li","lines":"203,224"}},{"content":"\n

基本操作

","children":[{"content":"\n

插入元素

","children":[{"content":"\n

在顺序表L的第i(1≤i≤L.length+1)个位置插入新元素,成功返回true,失败返回false

","children":[],"payload":{"tag":"li","lines":"228,229"}},{"content":"\n

时间复杂度

","children":[{"content":"最好情况:在表尾插入,元素向后移动循环没有执行,时间复杂度O(1);","children":[],"payload":{"tag":"li","lines":"231,232"}},{"content":"最坏情况:在表头插入,元素后移循环执行n次,时间复杂度为O(n);","children":[],"payload":{"tag":"li","lines":"232,233"}},{"content":"平均情况:随机插入,平均次数为:n/2,对应的平均复杂度为O(n);","children":[],"payload":{"tag":"li","lines":"233,235"}}],"payload":{"tag":"li","lines":"229,235"}},{"content":"\n

平均时间复杂度为:O(n)

","children":[],"payload":{"tag":"li","lines":"235,237"}}],"payload":{"tag":"li","lines":"226,237"}},{"content":"\n

删除元素

","children":[{"content":"\n

删除顺序表L中第i(1≤i≤L.length+1)个位置的元素。成功则返回true,将被删除的元素用引用变量返回,失败则返回false

","children":[],"payload":{"tag":"li","lines":"239,240"}},{"content":"\n

时间复杂度

","children":[{"content":"最好情况:删除表尾元素,不需要移动任何元素,时间复杂度为O(1);","children":[],"payload":{"tag":"li","lines":"242,243"}},{"content":"最坏情况:删除表头元素,需要移动除第一个元素外的所有元素,时间复杂度为O(n)","children":[],"payload":{"tag":"li","lines":"243,244"}},{"content":"平均情况:随机删除,平均需要(n-1)/2,对应的时间复杂度为O(n)","children":[],"payload":{"tag":"li","lines":"244,246"}}],"payload":{"tag":"li","lines":"240,246"}},{"content":"\n

平均时间复杂度为O(n)

","children":[],"payload":{"tag":"li","lines":"246,248"}}],"payload":{"tag":"li","lines":"237,248"}},{"content":"\n

按值查找(顺序查找)

","children":[{"content":"\n

在顺序表L中查找第一个元素值等于e的元素查找成功返回该元素位序(不是角标),查找失败返回0

","children":[],"payload":{"tag":"li","lines":"250,251"}},{"content":"\n

位序(个人理解):元素在线性表中的位置序号,角标为i(角标从0开始),对应的位序为i+1(位序从1开始)。当返回为0时,则直接代表没有命中

","children":[],"payload":{"tag":"li","lines":"251,252"}},{"content":"\n

时间复杂度

","children":[{"content":"最好情况:查找的元素在表头,只需要比较一次,循环成本最小,时间复杂度为O(1);","children":[],"payload":{"tag":"li","lines":"254,255"}},{"content":"最坏情况:查找的元素在表尾或者不存在,需要完整遍历,比较n次,时间复杂度为O(n);","children":[],"payload":{"tag":"li","lines":"255,256"}},{"content":"平均情况:随机查找表上的第i个(1≤i≤L.length)元素,平均次数为(n+1)/2,对应时间复杂度为O(n)","children":[],"payload":{"tag":"li","lines":"256,258"}}],"payload":{"tag":"li","lines":"252,258"}},{"content":"\n

平均时间复杂度为O(n)

","children":[],"payload":{"tag":"li","lines":"258,260"}}],"payload":{"tag":"li","lines":"248,260"}}],"payload":{"tag":"li","lines":"224,260"}}],"payload":{"tag":"h3","lines":"201,202"}},{"content":"链式表示","children":[{"content":"\n

基础理解

","children":[{"content":"链式存储线性表时,不需要使用连续的存储单元,不要求逻辑上相邻的两个元素在物理位置上也相邻","children":[],"payload":{"tag":"li","lines":"264,265"}},{"content":"链式存储线性表时,对线性表的插入、删除元素是不需要移动元素的,只是需要修改指针","children":[],"payload":{"tag":"li","lines":"265,266"}},{"content":"理解“链”的含义,链条--->捆绑、指向------>指针","children":[],"payload":{"tag":"li","lines":"266,268"}}],"payload":{"tag":"li","lines":"262,268"}},{"content":"\n

单链表

","children":[{"content":"\n

定义:线性表的链式存储称作单链表,通过一组任意的存储单元来存储线性表中的数据元素。

","children":[],"payload":{"tag":"li","lines":"270,271"}},{"content":"\n

每个链表结点(node)除了存放元素自身的信息外,还需要存放一个指向其后继结点的指针。通过指针建立起链表元素之间的线性关系

","children":[],"payload":{"tag":"li","lines":"271,272"}},{"content":"\n

单链表可以解决顺序表需要大量连续存储空间的缺点,但是单链表在数据域的基础上附加了指针域,存在浪费存储空间的缺点

","children":[],"payload":{"tag":"li","lines":"272,273"}},{"content":"\n

单链表的元素是离散地分布在存储空间中的,不能直接找到表中特定的结点,需要从头开始遍历、一次查找【单链表是非随机存取的存储结构】

","children":[],"payload":{"tag":"li","lines":"273,274"}},{"content":"\n

头结点相关

","children":[{"content":"\n

定义:为了操作上的方便,在单链表第一个结点之前附加一个结点,叫做头结点。

","children":[],"payload":{"tag":"li","lines":"276,277"}},{"content":"\n

基本特点

","children":[{"content":"不论单链表是否带头结点【可选】,头指针始终指向链表的第一个结点","children":[],"payload":{"tag":"li","lines":"279,280"}},{"content":"头结点的指针域指向线性表的第一个元素结点","children":[],"payload":{"tag":"li","lines":"280,281"}},{"content":"头结点的数据域可以不存任何信息、也可以记录表长等基础信息","children":[],"payload":{"tag":"li","lines":"281,282"}},{"content":"头结点是带头结点的链表中的第一个结点","children":[],"payload":{"tag":"li","lines":"282,284"}}],"payload":{"tag":"li","lines":"277,284"}},{"content":"\n

优点

","children":[{"content":"因为开始结点的位置被存放在头结点的指针域中,所以在链表的第一个位置上的操作和在表的其他位置上的操作一致,不需要进行特殊处理","children":[],"payload":{"tag":"li","lines":"286,287"}},{"content":"无论链表是否为空,头指针始终是指向头结点的头结点的非空指针","children":[],"payload":{"tag":"li","lines":"287,288"}},{"content":"头结点的引入,很好的统一了空表和非空表的操作,有效避免头指针空指针异常问题","children":[],"payload":{"tag":"li","lines":"288,290"}}],"payload":{"tag":"li","lines":"284,290"}}],"payload":{"tag":"li","lines":"274,290"}},{"content":"\n

基本操作

","children":[{"content":"\n

链表创建

","children":[{"content":"\n

头插法

","children":[{"content":"定义:从空表开始,生成新的结点,将读取的数据存放在新结点的数据域中,将新结点插入到当前链表的表头【头结点之后】","children":[],"payload":{"tag":"li","lines":"296,297"}},{"content":"读入数据的顺序与生成的链表中的元素顺序是相反的","children":[],"payload":{"tag":"li","lines":"297,298"}},{"content":"每个结点插入的时间复杂度为O(1),单链表长度为n时,头插法的时间复杂度为O(n)","children":[],"payload":{"tag":"li","lines":"298,300"}}],"payload":{"tag":"li","lines":"294,300"}},{"content":"\n

尾插法

","children":[{"content":"定义:新结点插入到当前链表的表尾上,必须增加一个尾指针r,始终指向当前链表的尾结点","children":[],"payload":{"tag":"li","lines":"302,303"}},{"content":"读入数据的顺序与生成的链表中的元素顺序完全一致","children":[],"payload":{"tag":"li","lines":"303,304"}},{"content":"每个结点插入的时间复杂度为O(1),单链表长度为n时,尾巴插法的时间复杂度为O(n)","children":[],"payload":{"tag":"li","lines":"304,305"}},{"content":"相比头插法附设了一个指向表尾结点的指针,但时间复杂度与头插法相同","children":[],"payload":{"tag":"li","lines":"305,307"}}],"payload":{"tag":"li","lines":"300,307"}}],"payload":{"tag":"li","lines":"292,307"}},{"content":"\n

按序号查找

","children":[{"content":"定义:在单链表中从第一个结点出发,顺指针next域逐个往下搜索、遍历,直到找出第i个结点为止,否则返回最后一个结点指针域NULL","children":[],"payload":{"tag":"li","lines":"309,310"}},{"content":"时间复杂度为:O(n)","children":[],"payload":{"tag":"li","lines":"310,312"}}],"payload":{"tag":"li","lines":"307,312"}},{"content":"\n

按值查找

","children":[{"content":"定义:从单链表的第一个结点开始,从前往后依次比较表中个结点数据域的值,等于给定值e,则返回该结点的指针;若整个单链表【遍历完】中没有数据域值为e的结点,则返回NULL;","children":[],"payload":{"tag":"li","lines":"314,315"}},{"content":"时间复杂度为:O(n)","children":[],"payload":{"tag":"li","lines":"315,317"}}],"payload":{"tag":"li","lines":"312,317"}},{"content":"\n

插入结点

","children":[{"content":"\n

定义:单链表中,将值为x的新结点插入到单链表的第i个位置上

","children":[],"payload":{"tag":"li","lines":"319,320"}},{"content":"\n

基本步骤

","children":[{"content":"第一步: 检查插入位置的合法性;","children":[],"payload":{"tag":"li","lines":"322,323"}},{"content":"第二步: 找到待插入位置的前驱结点,即第(i-1)个结点;","children":[],"payload":{"tag":"li","lines":"323,324"}},{"content":"第三部: 在前驱结点后插入新结点;","children":[],"payload":{"tag":"li","lines":"324,325"}},{"content":"过程不能更换,避免后继指针不存在的问题","children":[],"payload":{"tag":"li","lines":"325,327"}}],"payload":{"tag":"li","lines":"320,327"}},{"content":"\n

时间复杂度

","children":[{"content":"插入结点的时间复杂度集中在查找第(i-1)个元素,时间复杂度为O(n)","children":[],"payload":{"tag":"li","lines":"329,330"}},{"content":"如果在给定结点的后面插入新结点,只需要执行p->next=s操作,时间复杂度为O(1)","children":[],"payload":{"tag":"li","lines":"330,332"}}],"payload":{"tag":"li","lines":"327,332"}},{"content":"\n

前插操作:在某结点的前面插入一个新的结点

","children":[],"payload":{"tag":"li","lines":"332,333"}},{"content":"\n

后插操作:在某结点的后面插入一个新的结点,单链表插入算法中,通常采用后插操作的

","children":[],"payload":{"tag":"li","lines":"333,334"}},{"content":"\n

对结点的前插操作都可以转化为后插操作,前提:需要从单链表的头结点开始顺序查找到其前驱结点;时间复杂度为O(n)。

","children":[],"payload":{"tag":"li","lines":"334,336"}}],"payload":{"tag":"li","lines":"317,336"}},{"content":"\n

删除结点

","children":[{"content":"\n

定义:将单链表L的第i个结点元素删除;

","children":[],"payload":{"tag":"li","lines":"338,339"}},{"content":"\n

基本步骤

","children":[{"content":"第一步: 先检查删除位置的合法性;","children":[],"payload":{"tag":"li","lines":"341,342"}},{"content":"第二步: 查找表中的第(i-1)个结点,即被删结点的前驱结点;","children":[],"payload":{"tag":"li","lines":"342,343"}},{"content":"第三步: 移动指针,删除结点元素;","children":[],"payload":{"tag":"li","lines":"343,345"}}],"payload":{"tag":"li","lines":"339,345"}},{"content":"\n

和插入算法一样,时间都消耗在查询前驱结点上,时间复杂度为:O(n)

","children":[],"payload":{"tag":"li","lines":"345,346"}},{"content":"\n

利用p结点的后继结点将p结点删除【经典思路】

","children":[{"content":"第一步:申请结点q,使其只想p结点的后继结点;","children":[],"payload":{"tag":"li","lines":"348,349"}},{"content":"第二步:将p结点的数据域值换成其后继结点的数据域;【注意,交换没什么意义,最终p的后继结点会删除、释放】","children":[],"payload":{"tag":"li","lines":"349,350"}},{"content":"第三步:p的指针域指向q的指针域,q结点从链中“断开”","children":[],"payload":{"tag":"li","lines":"350,351"}},{"content":"第四步:释放q的内存空间","children":[],"payload":{"tag":"li","lines":"351,352"}},{"content":"相比按值查找前驱结点来删除给定的结点p,利用后继结点来删除的时间复杂度更小,为:O(1)","children":[],"payload":{"tag":"li","lines":"352,354"}}],"payload":{"tag":"li","lines":"346,354"}}],"payload":{"tag":"li","lines":"336,354"}},{"content":"\n

计算表长(遍历)

","children":[{"content":"\n

定义:计算单链表中数据结点(不含头结点)的个数

","children":[],"payload":{"tag":"li","lines":"356,357"}},{"content":"\n

算法思路:从第一个结点开始顺序依次访问表中的每一个结点,为此需要设置一个计数器变量,每访问一个结点,计算器加1,直到访问到空结点为止。

","children":[],"payload":{"tag":"li","lines":"357,358"}},{"content":"\n

时间复杂度:O(n)

","children":[],"payload":{"tag":"li","lines":"358,359"}},{"content":"\n

判空条件

","children":[{"content":"不带头结点的单链表L为空,判定条件是L=NULL。","children":[],"payload":{"tag":"li","lines":"361,362"}},{"content":"带头结点的单链表L为空,判空条件:L->next=NULL","children":[],"payload":{"tag":"li","lines":"362,364"}}],"payload":{"tag":"li","lines":"359,364"}}],"payload":{"tag":"li","lines":"354,364"}}],"payload":{"tag":"li","lines":"290,364"}}],"payload":{"tag":"li","lines":"268,364"}},{"content":"\n

双链表

","children":[{"content":"\n

定义:在单链表的结点中增加了一个指向结点前驱的prior指针,由prior指针域、data数据域、next指针域三部分组成。

","children":[],"payload":{"tag":"li","lines":"366,367"}},{"content":"\n

基本特点

","children":[{"content":"双链表仅仅在单链表的结点中增加了一个指向结点前驱的prior指针","children":[],"payload":{"tag":"li","lines":"369,370"}},{"content":"按值查找、按序号查找在单链表和双链表上的操作是相同的","children":[],"payload":{"tag":"li","lines":"370,371"}},{"content":"和单链表不同,插入、删除操作除了修改next指针域,双链表还需要修改prior指针域,确保不断【重要】","children":[],"payload":{"tag":"li","lines":"371,373"}}],"payload":{"tag":"li","lines":"367,373"}},{"content":"\n

基本操作

","children":[{"content":"\n

插入结点

","children":[{"content":"第一步:s->next=p->next","children":[],"payload":{"tag":"li","lines":"377,378"}},{"content":"第二步:p->next-prior=s","children":[],"payload":{"tag":"li","lines":"378,379"}},{"content":"第三步:s->prior=p","children":[],"payload":{"tag":"li","lines":"379,380"}},{"content":"第四步:p->next=s","children":[],"payload":{"tag":"li","lines":"380,381"}},{"content":"时间复杂度:O(1)","children":[],"payload":{"tag":"li","lines":"381,382"}},{"content":"注意:结点p和s的前驱、后继指针要关联清楚,第一二步必须在第四步之前完成【重要】","children":[],"payload":{"tag":"li","lines":"382,384"}}],"payload":{"tag":"li","lines":"375,384"}},{"content":"\n

删除结点

","children":[{"content":"第一步:p->next=q->next","children":[],"payload":{"tag":"li","lines":"386,387"}},{"content":"第二步:q->next->prior=p","children":[],"payload":{"tag":"li","lines":"387,388"}},{"content":"第三步:free(q) 释放结点内存空间","children":[],"payload":{"tag":"li","lines":"388,389"}},{"content":"时间复杂度:O(1)","children":[],"payload":{"tag":"li","lines":"389,390"}},{"content":"注意:删除双链表结点p的后继结点的第一二步,顺序可换,及时释放内存空间【重要】","children":[],"payload":{"tag":"li","lines":"390,392"}}],"payload":{"tag":"li","lines":"384,392"}}],"payload":{"tag":"li","lines":"373,392"}}],"payload":{"tag":"li","lines":"364,392"}},{"content":"\n

循环链表

","children":[{"content":"\n

循环单链表

","children":[{"content":"\n

定义:在单链表的基础上,将最后一个结点(尾结点)的指针由NULL改为指向头结点,形成。【单链表----->循环单链表】

","children":[],"payload":{"tag":"li","lines":"396,397"}},{"content":"\n

判断条件

","children":[{"content":"不是判断头结点的指针是否为空,而是需要判断是否等于头指针","children":[],"payload":{"tag":"li","lines":"399,400"}},{"content":"表为空时,头结点的next指针域其实是指向自己","children":[],"payload":{"tag":"li","lines":"400,401"}},{"content":"结点的next指针指向自己,也就能判断表为空","children":[],"payload":{"tag":"li","lines":"401,403"}}],"payload":{"tag":"li","lines":"397,403"}},{"content":"\n

基本特点

","children":[{"content":"在循环单链表中,尾结点*p的next指针域指向链表L(即:头结点),形成了闭环,不存在指针域为NULL的结点","children":[],"payload":{"tag":"li","lines":"405,406"}},{"content":"由于循环单链表是个,在任何位置上的插入、删除操作都是等价的,不需要去判断是否是表尾","children":[],"payload":{"tag":"li","lines":"406,407"}},{"content":"单链表只能从头结点(表头结点)开始往后顺序遍历整个表,循环单链表可以从表中任意位置开始遍历整个链表,结点是等价的","children":[],"payload":{"tag":"li","lines":"407,408"}},{"content":"循环单链表可以抽象为时钟,形成的是有顺序的","children":[],"payload":{"tag":"li","lines":"408,409"}},{"content":"频繁的表头表尾操作,可以对循环单链表设置尾指针,而不设置头指针,明确尾指针r后,头指针即为:r->next ,减少头指针到尾指针间的遍历,时间复杂度:O(n)---->O(1)","children":[],"payload":{"tag":"li","lines":"409,411"}}],"payload":{"tag":"li","lines":"403,411"}}],"payload":{"tag":"li","lines":"394,411"}},{"content":"\n

循环双链表

","children":[{"content":"\n

定义:在双链表的基础上,将尾结点的next指针指向头结点,将头结点的prior指针指向尾结点。【双链表----->循环双链表】

","children":[],"payload":{"tag":"li","lines":"413,414"}},{"content":"\n

判空条件

","children":[{"content":"\n

循环双链表为空时,头结点*p的prior指针和next指针都指向L

","children":[],"payload":{"tag":"li","lines":"416,417"}},{"content":"\n

同时满足

","children":[{"content":"p->prior=L","children":[],"payload":{"tag":"li","lines":"419,420"}},{"content":"p->next=L","children":[],"payload":{"tag":"li","lines":"420,422"}}],"payload":{"tag":"li","lines":"417,422"}}],"payload":{"tag":"li","lines":"414,422"}},{"content":"\n

基本特点:从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点后继结点

","children":[],"payload":{"tag":"li","lines":"422,424"}}],"payload":{"tag":"li","lines":"411,424"}}],"payload":{"tag":"li","lines":"392,424"}},{"content":"\n

静态链表

","children":[{"content":"\n

定义:借助数组来描述线性表的链式存储结构,结点元素同样存在数据域data和指针域next

","children":[],"payload":{"tag":"li","lines":"426,427"}},{"content":"\n

需要注意

","children":[{"content":"和普通的链表的指针域不同的是,静态链表的指针是结点元素的相对地址(数组下标),也称为游标,建议结合高级语言中数组的概念来理解;","children":[],"payload":{"tag":"li","lines":"429,430"}},{"content":"与顺序表一样,虽然静态链表属于链表,但是存储时需要预先分配一块连续的内存空间","children":[],"payload":{"tag":"li","lines":"430,431"}},{"content":"静态链表是通过数组游标来访问下一个结点元素","children":[],"payload":{"tag":"li","lines":"431,433"}}],"payload":{"tag":"li","lines":"427,433"}},{"content":"\n

特点

","children":[{"content":"静态链表以next=-1作为结束的标志【尾结点】","children":[],"payload":{"tag":"li","lines":"435,436"}},{"content":"和动态链表相同,插入、删除操作不需要移动元素,只需要修改指针;","children":[],"payload":{"tag":"li","lines":"436,437"}},{"content":"总体来说,静态链表没有单链表使用方便,需要将整个链表存储在一块连续的内存空间中,内部的存储可以分散,通过指针构成的关系","children":[],"payload":{"tag":"li","lines":"437,439"}}],"payload":{"tag":"li","lines":"433,439"}}],"payload":{"tag":"li","lines":"424,439"}},{"content":"\n

零碎知识补充

","children":[{"content":"\n

无论是链表的插入还是删除操作,必须保证不断链【重要】

","children":[],"payload":{"tag":"li","lines":"441,442"}},{"content":"\n

顺序存储结构可以随机存取也能顺序存取,链式结构只能进行顺序存取

","children":[],"payload":{"tag":"li","lines":"442,443"}},{"content":"\n

顺序存储方式同样适合图和树的存储,例如:满二叉树的顺序存储

","children":[],"payload":{"tag":"li","lines":"443,444"}},{"content":"\n

队列需要在表头删除元素,在表尾插入元素【先进先出】,采用带尾指针的循环单链表比较方便

","children":[],"payload":{"tag":"li","lines":"444,445"}},{"content":"\n

静态链表中的指针称为游标,指示下一个元素在数组中的下标

","children":[],"payload":{"tag":"li","lines":"445,446"}},{"content":"\n

静态链表用数组表示,需要预先分配较大的连续空间,同时具有一般链表的特点(插入、删除元素不需要移动元素)

","children":[],"payload":{"tag":"li","lines":"446,447"}},{"content":"\n

单链表设置头结点的

","children":[{"content":"\n

目的:方便运算

","children":[],"payload":{"tag":"li","lines":"449,450"}},{"content":"\n

好处

","children":[{"content":"有头结点后,插入、删除数据元素的算法统一起来了,不需要判断是否在第一个元素之前插入或者删除第一个元素了","children":[],"payload":{"tag":"li","lines":"452,453"}},{"content":"不论链表是否为空,头指针是指向头结点的非空指针,链表的头指针不变,因此空链表和非空链表的处理也就统一起来了。","children":[],"payload":{"tag":"li","lines":"453,455"}}],"payload":{"tag":"li","lines":"450,455"}}],"payload":{"tag":"li","lines":"447,455"}}],"payload":{"tag":"li","lines":"439,455"}}],"payload":{"tag":"h3","lines":"260,261"}},{"content":"顺序表和链表的比较","children":[{"content":"\n

存取方式

","children":[{"content":"顺序表支持顺序存取和随机存取","children":[],"payload":{"tag":"li","lines":"459,460"}},{"content":"链表只能从表头顺序存取元素,支持顺序存取","children":[],"payload":{"tag":"li","lines":"460,462"}}],"payload":{"tag":"li","lines":"457,462"}},{"content":"\n

逻辑结构与物理结构

","children":[{"content":"顺序存储时,逻辑上相邻的元素,对应的物理存储位置也相邻【一定性】","children":[],"payload":{"tag":"li","lines":"464,465"}},{"content":"链式存储时,逻辑上相邻的元素,对应的物理存储位置不一定相邻【可以相邻,也可以不相邻】","children":[],"payload":{"tag":"li","lines":"465,466"}},{"content":"链式存储的逻辑关系通过指针链接表示","children":[],"payload":{"tag":"li","lines":"466,468"}}],"payload":{"tag":"li","lines":"462,468"}},{"content":"\n

时间复杂度

","children":[{"content":"\n

按值查找

","children":[{"content":"顺序表无序的情况下,顺序表和链表的时间复杂度均为O(n);","children":[],"payload":{"tag":"li","lines":"472,473"}},{"content":"顺序表有序的情况下,顺序表的时间复杂度为O(log2n),链表为O(n);","children":[],"payload":{"tag":"li","lines":"473,475"}}],"payload":{"tag":"li","lines":"470,475"}},{"content":"\n

按序号查找

","children":[{"content":"顺序表支持随机访问,时间复杂度为O(1);","children":[],"payload":{"tag":"li","lines":"477,478"}},{"content":"顺序表不支持随机访问,时间复杂度为O(n);","children":[],"payload":{"tag":"li","lines":"478,480"}}],"payload":{"tag":"li","lines":"475,480"}},{"content":"\n

插入、删除

","children":[{"content":"顺序表平均需要移动半个表长的元素;","children":[],"payload":{"tag":"li","lines":"482,483"}},{"content":"链表只需要修改相应结点的指针域,不需要移动元素;","children":[],"payload":{"tag":"li","lines":"483,484"}},{"content":"链表结点除了数据域,还有指针域,在存储空间上比顺序存储需要更大的存储空间,付出更大的存储代价,存储密度不够大","children":[],"payload":{"tag":"li","lines":"484,486"}}],"payload":{"tag":"li","lines":"480,486"}}],"payload":{"tag":"li","lines":"468,486"}},{"content":"\n

空间分配

","children":[{"content":"\n

顺序存储

","children":[{"content":"\n

静态分配

","children":[{"content":"需要预先分配足够大的存储空间","children":[],"payload":{"tag":"li","lines":"492,493"}},{"content":"空间装满后不能扩充,存储新元素将出现内存溢出","children":[],"payload":{"tag":"li","lines":"493,494"}},{"content":"存储空间过大,顺序表后部闲置空间过多,造成内部碎片","children":[],"payload":{"tag":"li","lines":"494,495"}},{"content":"存储空间过小,会造成内存溢出","children":[],"payload":{"tag":"li","lines":"495,497"}}],"payload":{"tag":"li","lines":"490,497"}},{"content":"\n

动态分配

","children":[{"content":"能够扩充存储空间","children":[],"payload":{"tag":"li","lines":"499,500"}},{"content":"需要移动大量元素,操作效率降低","children":[],"payload":{"tag":"li","lines":"500,501"}},{"content":"内存中没有更大块的连续存储空间,将会导致空间分配失败;","children":[],"payload":{"tag":"li","lines":"501,503"}}],"payload":{"tag":"li","lines":"497,503"}}],"payload":{"tag":"li","lines":"488,503"}},{"content":"\n

链式存储

","children":[{"content":"结点空间只在需要的时候申请分配","children":[],"payload":{"tag":"li","lines":"505,506"}},{"content":"只要内存由空间就可以分配,操作灵活、高效","children":[],"payload":{"tag":"li","lines":"506,508"}}],"payload":{"tag":"li","lines":"503,508"}}],"payload":{"tag":"li","lines":"486,508"}}],"payload":{"tag":"h3","lines":"455,456"}},{"content":"存储结构选取","children":[{"content":"\n

基于存储的考虑

","children":[{"content":"对线性表的长度和存储规模难以估计时,不宜采用顺序表存储","children":[],"payload":{"tag":"li","lines":"512,513"}},{"content":"链表不用事先估计存储规模,但存储密度较低","children":[],"payload":{"tag":"li","lines":"513,514"}},{"content":"链式存储结构的存储密度小于1,不要求连续的存储空间","children":[],"payload":{"tag":"li","lines":"514,516"}}],"payload":{"tag":"li","lines":"510,516"}},{"content":"\n

基于运算的考虑

","children":[{"content":"\n

随机存取

","children":[{"content":"顺序表支持随机存取,按序号查找顺序表的时间复杂度为O(1),相对较好","children":[],"payload":{"tag":"li","lines":"520,521"}},{"content":"链表不支持随机存取,按序号查找链表的时间复杂度为O(n)","children":[],"payload":{"tag":"li","lines":"521,523"}}],"payload":{"tag":"li","lines":"518,523"}},{"content":"\n

插入、删除操作

","children":[{"content":"顺序表的插入、删除操作,平均需要移动表中一半的元素,当表的数据量较大时,这种情况需要重点考虑的","children":[],"payload":{"tag":"li","lines":"525,526"}},{"content":"链表的插入、删除操作,也是需要找插入位置(前驱结点、后继结点),主要的操作还是比较操作,相对较好","children":[],"payload":{"tag":"li","lines":"526,528"}}],"payload":{"tag":"li","lines":"523,528"}}],"payload":{"tag":"li","lines":"516,528"}},{"content":"\n

基于环境的考虑

","children":[{"content":"顺序表容易实现,任何高级语言中都有数组类型","children":[],"payload":{"tag":"li","lines":"530,531"}},{"content":"链表操作是基于指针的,指针移动,相对复杂","children":[],"payload":{"tag":"li","lines":"531,533"}}],"payload":{"tag":"li","lines":"528,533"}},{"content":"\n

综合结论

","children":[{"content":"通常比较稳定的线性表选择顺序存储","children":[],"payload":{"tag":"li","lines":"535,536"}},{"content":"频繁进行插入、删除操作的线性表,应该选择链式存储,动态性较强","children":[],"payload":{"tag":"li","lines":"536,538"}}],"payload":{"tag":"li","lines":"533,538"}}],"payload":{"tag":"h3","lines":"508,509"}}],"payload":{"tag":"h2","lines":"169,170"}},{"content":"栈和队列","children":[{"content":"栈【后进先出】","children":[{"content":"\n

基础概念

","children":[{"content":"\n

定义: 只允许在一端进行插入或者删除操作的线性表。

","children":[{"content":"后进先出","children":[],"payload":{"tag":"li","lines":"546,547"}},{"content":"明确栈是一种线性表","children":[],"payload":{"tag":"li","lines":"547,548"}},{"content":"限定栈只能在某一端进行插入或者删除操作","children":[],"payload":{"tag":"li","lines":"548,550"}}],"payload":{"tag":"li","lines":"544,550"}},{"content":"\n

栈顶:线性表允许进行插入和删除的一端

","children":[],"payload":{"tag":"li","lines":"550,551"}},{"content":"\n

栈底:不允许进行插入和删除的另外一端,是固定的

","children":[],"payload":{"tag":"li","lines":"551,552"}},{"content":"\n

空栈:不含任何元素的空表,也叫栈空

","children":[],"payload":{"tag":"li","lines":"552,554"}}],"payload":{"tag":"li","lines":"542,554"}},{"content":"\n

基本操作

","children":[{"content":"InitStack(&S): 初始化一个空栈S,栈顶指针初始化为-1","children":[],"payload":{"tag":"li","lines":"556,557"}},{"content":"StackEmpty(S): 判断一个栈是否为空,如果栈空则返回true,否则返回false","children":[],"payload":{"tag":"li","lines":"557,558"}},{"content":"Push(&S,x): 进栈,若栈未满,x进栈操作,插入到栈内成为新的栈顶元素","children":[],"payload":{"tag":"li","lines":"558,559"}},{"content":"Pop(&S,&x): 出栈,若栈非空,出栈操作,弹出栈顶元素,用指针x进行返回","children":[],"payload":{"tag":"li","lines":"559,560"}},{"content":"GetTop(S,&x): 读栈顶元素,若栈S非空,用x返回栈顶元素","children":[],"payload":{"tag":"li","lines":"560,561"}},{"content":"ClearStack(&S): 销毁栈,释放栈S占用的存储空间","children":[],"payload":{"tag":"li","lines":"561,563"}}],"payload":{"tag":"li","lines":"554,563"}},{"content":"\n

顺序存储结构

","children":[{"content":"\n

顺序栈

","children":[{"content":"\n

定义:栈的顺序存储,利用一组地址连续的存储单元存放自栈底到栈顶的所有元素,同时附加一个用来指向当前栈顶位置的指针

","children":[],"payload":{"tag":"li","lines":"567,568"}},{"content":"\n

顺序栈S【重要,栈顶指针初始化为-1】

","children":[{"content":"\n

栈顶指针S.top

","children":[{"content":"初始时,S.top=-1","children":[],"payload":{"tag":"li","lines":"572,573"}},{"content":"栈顶元素:S.data[S.top]","children":[],"payload":{"tag":"li","lines":"573,575"}}],"payload":{"tag":"li","lines":"570,575"}},{"content":"\n

进栈操作:栈不满时,栈顶+1,再进栈

","children":[],"payload":{"tag":"li","lines":"575,576"}},{"content":"\n

出栈操作:栈非空时,取栈顶元素,栈顶-1

","children":[],"payload":{"tag":"li","lines":"576,577"}},{"content":"\n

栈满条件:S.top=MaxSize-1

","children":[],"payload":{"tag":"li","lines":"577,578"}},{"content":"\n

栈空条件:S.top=-1

","children":[],"payload":{"tag":"li","lines":"578,579"}},{"content":"\n

栈长:S.top+1

","children":[],"payload":{"tag":"li","lines":"579,580"}},{"content":"\n

当对栈的最大使用空间估计不足时,容易出现栈上溢(外溢),需要主动向用户报告反馈,避免出现错误;

","children":[],"payload":{"tag":"li","lines":"580,582"}}],"payload":{"tag":"li","lines":"568,582"}},{"content":"\n

栈顶指针初始化为0【更多是为-1】

","children":[{"content":"入栈: S.data[S.top++]=x","children":[],"payload":{"tag":"li","lines":"584,585"}},{"content":"出栈: x=S.data[--S.top]","children":[],"payload":{"tag":"li","lines":"585,586"}},{"content":"同时, 栈空、栈满条件也会有变化","children":[],"payload":{"tag":"li","lines":"586,588"}}],"payload":{"tag":"li","lines":"582,588"}},{"content":"\n

基本运算

","children":[{"content":"InitStack(&S): 初始化一个空栈S,栈顶指针初始化为-1","children":[],"payload":{"tag":"li","lines":"590,591"}},{"content":"StackEmpty(S): 判断一个栈是否为空,即:栈顶指针是否为-1,如果栈空则返回true,否则返回false","children":[],"payload":{"tag":"li","lines":"591,592"}},{"content":"Push(&S,x): 进栈,若栈未满,x进栈操作,插入到栈内成为新的栈顶元素。","children":[],"payload":{"tag":"li","lines":"592,593"}},{"content":"Pop(&S,&x): 出栈,若栈非空,出栈操作,弹出栈顶元素,用指针x进行返回。","children":[],"payload":{"tag":"li","lines":"593,594"}},{"content":"GetTop(S,&x): 读(获取)栈顶元素,若栈S非空,用x返回栈顶元素。","children":[],"payload":{"tag":"li","lines":"594,596"}}],"payload":{"tag":"li","lines":"588,596"}}],"payload":{"tag":"li","lines":"565,596"}},{"content":"\n

共享栈

","children":[{"content":"\n

定义:利用栈底位置相对不变的特性,可以让两个顺序栈共享一个一维存储空间,将两个栈的栈底分别设置在共享空间的两端,两个栈顶则向共享空间的中间延伸

","children":[],"payload":{"tag":"li","lines":"598,599"}},{"content":"\n

基础概念

","children":[{"content":"两个栈(0、1号顺序栈)的栈顶指针都指向栈顶元素","children":[],"payload":{"tag":"li","lines":"601,602"}},{"content":"0号栈栈顶指针top=-1时,0号栈为空","children":[],"payload":{"tag":"li","lines":"602,603"}},{"content":"1号栈栈顶指针top=MaxSize时,1号栈为空","children":[],"payload":{"tag":"li","lines":"603,604"}},{"content":"当且仅当两个栈的栈顶指针相邻(top1-top0=1),可以判断共享栈栈满","children":[],"payload":{"tag":"li","lines":"604,606"}}],"payload":{"tag":"li","lines":"599,606"}},{"content":"\n

进栈【先移动指针,后赋值】

","children":[{"content":"当0号栈进栈时,0号栈栈顶指针top0先加1后赋值","children":[],"payload":{"tag":"li","lines":"608,609"}},{"content":"当1号栈进栈时,0号栈栈顶指针top1先减1后赋值","children":[],"payload":{"tag":"li","lines":"609,611"}}],"payload":{"tag":"li","lines":"606,611"}},{"content":"\n

出栈【先赋值,后移动指针】

","children":[{"content":"当0号栈进栈时,0号栈栈顶指针top0先赋值后减1","children":[],"payload":{"tag":"li","lines":"613,614"}},{"content":"当1号栈进栈时,0号栈栈顶指针top1先赋值后加1","children":[],"payload":{"tag":"li","lines":"614,616"}}],"payload":{"tag":"li","lines":"611,616"}},{"content":"\n

重要特性

","children":[{"content":"共享栈能够更有效的利用存储空间,两个栈空间进行相互调节","children":[],"payload":{"tag":"li","lines":"618,619"}},{"content":"只有当这个存储空间(即:共享空间)被占满时才会发生上溢","children":[],"payload":{"tag":"li","lines":"619,620"}},{"content":"共享栈对存取效率没有什么影响,存取数据的时间复杂度都为O(1),在栈顶操作。","children":[],"payload":{"tag":"li","lines":"620,622"}}],"payload":{"tag":"li","lines":"616,622"}}],"payload":{"tag":"li","lines":"596,622"}}],"payload":{"tag":"li","lines":"563,622"}},{"content":"\n

链式存储结构

","children":[{"content":"\n

基本概念

","children":[{"content":"链栈: 采用链式存储的栈","children":[],"payload":{"tag":"li","lines":"626,627"}},{"content":"栈满:对于链栈来说,是基于链式存储的,基本不存在栈满的情况,除非内存已经没有使用空间了","children":[],"payload":{"tag":"li","lines":"627,628"}},{"content":"栈空:对于空栈来说,链表原来的定义是头指针指向空,那么链栈的空其实就是top=NULL,链栈元素总数为0","children":[],"payload":{"tag":"li","lines":"628,629"}},{"content":"通常对于链栈来说,是不需要头结点的,当然也存在带头结点的链栈","children":[],"payload":{"tag":"li","lines":"629,631"}}],"payload":{"tag":"li","lines":"624,631"}},{"content":"\n

基础操作【基于单链表】

","children":[{"content":"\n

入栈

","children":[{"content":"如果链栈不存在,则栈满,入栈操作失败,返回false;","children":[],"payload":{"tag":"li","lines":"635,636"}},{"content":"如果链栈存在,进行单链表的结点插入操作,移动指针,结点元素赋值,再将结点压入链栈中,移动链栈栈顶指针,最后链栈元素总数+1,返回true","children":[],"payload":{"tag":"li","lines":"636,638"}}],"payload":{"tag":"li","lines":"633,638"}},{"content":"\n

出栈

","children":[{"content":"如果链栈不存在,或者为空栈,则无法进行出栈操作,返回false","children":[],"payload":{"tag":"li","lines":"640,641"}},{"content":"如果链栈满足出栈条件,则通过栈顶指针获取到链栈栈底结点,将其数据域赋值给变量e,移动栈顶指针指向待出栈元素的后继结点,同时释放待出栈元素的内存空间,链栈元素总数-1 ,出栈成功,返回true.","children":[],"payload":{"tag":"li","lines":"641,643"}}],"payload":{"tag":"li","lines":"638,643"}},{"content":"\n

基于单链表的链栈入栈、出栈操作,时间复杂度都为O(1)【重要】

","children":[],"payload":{"tag":"li","lines":"643,645"}}],"payload":{"tag":"li","lines":"631,645"}},{"content":"\n

优点

","children":[{"content":"便于多个栈共享存储空间","children":[],"payload":{"tag":"li","lines":"647,648"}},{"content":"不存在栈满上溢的情况,避免程序因溢出导致出错","children":[],"payload":{"tag":"li","lines":"648,649"}},{"content":"有效的提高存取效率","children":[],"payload":{"tag":"li","lines":"649,651"}}],"payload":{"tag":"li","lines":"645,651"}}],"payload":{"tag":"li","lines":"622,651"}}],"payload":{"tag":"h3","lines":"540,541"}},{"content":"队列【先进先出】","children":[{"content":"\n

基本概念

","children":[{"content":"队列:和栈一样,是一种操作受限制的线性表,只允许在表的一端进行插入,在表的另外一端进行删除,简称为,常记作:Queue","children":[],"payload":{"tag":"li","lines":"655,656"}},{"content":"队头:允许进行删除操作的一端,也叫做队首,常记作:Front","children":[],"payload":{"tag":"li","lines":"656,657"}},{"content":"队尾:允许进行插入操作的一端,常记作:Rear","children":[],"payload":{"tag":"li","lines":"657,658"}},{"content":"空队列:不含任何元素的空表,注意这个表是指线性表","children":[],"payload":{"tag":"li","lines":"658,659"}},{"content":"入队: 向队列中插入元素,也叫做进队","children":[],"payload":{"tag":"li","lines":"659,660"}},{"content":"出队: 删除队列元素,也叫做离队","children":[],"payload":{"tag":"li","lines":"660,662"}}],"payload":{"tag":"li","lines":"653,662"}},{"content":"\n

基础操作

","children":[{"content":"InitQueue(&Q): 初始化一个队列,构造空队列Q","children":[],"payload":{"tag":"li","lines":"664,665"}},{"content":"QueueEmpty(Q): 判断队列是否为空,队空返回true,否则返回false","children":[],"payload":{"tag":"li","lines":"665,666"}},{"content":"EnEmpty(&Q,x): 入队,如果队列Q未满,将x入队,成为新的队尾元素","children":[],"payload":{"tag":"li","lines":"666,667"}},{"content":"DeEmpty(&Q,&x): 出队,如果队列Q非空,删除队头元素,复制给x返回","children":[],"payload":{"tag":"li","lines":"667,668"}},{"content":"GetHead(Q,&x): 读取队头元素,如果队列Q非空,则将队头元素赋值给x","children":[],"payload":{"tag":"li","lines":"668,670"}}],"payload":{"tag":"li","lines":"662,670"}},{"content":"\n

顺序存储

","children":[{"content":"\n

顺序队列

","children":[{"content":"\n

队列的顺序实现是指分配一块连续的存储单元用来存放队列中的元素,并且附加两个指针

","children":[{"content":"front指针: 指向队头元素的位置","children":[],"payload":{"tag":"li","lines":"676,677"}},{"content":"rear指针: 指向队尾元素的位置","children":[],"payload":{"tag":"li","lines":"677,679"}}],"payload":{"tag":"li","lines":"674,679"}},{"content":"\n

初始状态(队空条件):Q.front=Q.rear=0

","children":[],"payload":{"tag":"li","lines":"679,680"}},{"content":"\n

入队操作:队不满时,先赋值给队尾元素,再移动队尾指针+1

","children":[],"payload":{"tag":"li","lines":"680,681"}},{"content":"\n

出队操作: 队不空时,先取队头元素值,再移动队头指针+1

","children":[],"payload":{"tag":"li","lines":"681,682"}},{"content":"\n

Q.front=Q.rear=0,那能用Q.rear==MaxSize来表示队满嘛?【不行】

","children":[],"payload":{"tag":"li","lines":"682,684"}}],"payload":{"tag":"li","lines":"672,684"}},{"content":"\n

循环队列

","children":[{"content":"\n

把顺序队列臆想为一个环状的空间,将存储队列元素的表从逻辑上看做为一个环

","children":[],"payload":{"tag":"li","lines":"686,687"}},{"content":"\n

初始时:Q.front=Q.rear=0

","children":[],"payload":{"tag":"li","lines":"687,688"}},{"content":"\n

队首指针进1: Q.front=(Q.front+1)%MaxSize

","children":[],"payload":{"tag":"li","lines":"688,689"}},{"content":"\n

队尾指针进1: Q.rear=(Q.rear+1)%MaxSize

","children":[],"payload":{"tag":"li","lines":"689,690"}},{"content":"\n

队列长度: (Q.rear+MaxSize-Q.front)%MaxSize

","children":[],"payload":{"tag":"li","lines":"690,691"}},{"content":"\n

除法取余运算(%)【解决顺序队列“上溢出”】问题

","children":[],"payload":{"tag":"li","lines":"691,692"}},{"content":"\n

如何区别队空还是队满?

","children":[{"content":"\n

方案一:牺牲一个单元来区分队空和队满

","children":[{"content":"前提:队头指针在队尾指针在队尾指针的下一个位置作为队满标志【重要】","children":[],"payload":{"tag":"li","lines":"696,697"}},{"content":"队满条件:(Q.rear+1)%MaxSize==Q.front","children":[],"payload":{"tag":"li","lines":"697,698"}},{"content":"队空条件:Q.front==Q.rear","children":[],"payload":{"tag":"li","lines":"698,699"}},{"content":"队列中元素个数:(Q.rear+MaxSize-Q.front)%MaxSize","children":[],"payload":{"tag":"li","lines":"699,701"}}],"payload":{"tag":"li","lines":"694,701"}},{"content":"\n

方案二:类型中增设表示元素个数的数据成员

","children":[{"content":"直接和MaxSize去比较","children":[],"payload":{"tag":"li","lines":"703,704"}},{"content":"队空条件: Q.count=0","children":[],"payload":{"tag":"li","lines":"704,705"}},{"content":"队满条件: Q.count=MaxSize","children":[],"payload":{"tag":"li","lines":"705,706"}},{"content":"【注意】不论是队空还是队满,对会存在Q.front=Q.rear,这个可以通过前面方案一解决","children":[],"payload":{"tag":"li","lines":"706,708"}}],"payload":{"tag":"li","lines":"701,708"}},{"content":"\n

方案三:类型中增设tag数据成员标记

","children":[{"content":"\n

通过添加tag标记的方式,区分队空还是队满

","children":[],"payload":{"tag":"li","lines":"710,711"}},{"content":"\n

tag0的情况下,如果因为删除导致Q.frontQ.rear,则队空;

","children":[],"payload":{"tag":"li","lines":"711,712"}},{"content":"\n

tag1的情况下,如果因为插入导致Q.frontQ.rear,则队满;

","children":[],"payload":{"tag":"li","lines":"712,713"}},{"content":"\n

tag的主要作用

","children":[{"content":"在有元素入队的时候,设置tag=1","children":[],"payload":{"tag":"li","lines":"715,716"}},{"content":"在有元素出队的时候,设置tag=0","children":[],"payload":{"tag":"li","lines":"716,718"}}],"payload":{"tag":"li","lines":"713,718"}}],"payload":{"tag":"li","lines":"708,718"}}],"payload":{"tag":"li","lines":"692,718"}}],"payload":{"tag":"li","lines":"684,718"}}],"payload":{"tag":"li","lines":"670,718"}},{"content":"\n

链式存储

","children":[{"content":"\n

链队列

","children":[{"content":"\n

链队列:和顺序队列一样,基于队列的链式表示叫做链队列,实际上为:一个同时带有队头指针和队尾指针的单链表

","children":[{"content":"头指针指向队头结点","children":[],"payload":{"tag":"li","lines":"724,725"}},{"content":"尾指针指向队尾结点(单链表的最后一个结点)","children":[],"payload":{"tag":"li","lines":"725,727"}}],"payload":{"tag":"li","lines":"722,727"}},{"content":"\n

不带头结点链式队列

","children":[{"content":"队空: linkQueue.frontNULL且linkQueue.rearNULL","children":[],"payload":{"tag":"li","lines":"729,730"}},{"content":"出队: 先判断队列是否为空,非空队列则取出队头元素,从链表中闪出去,队头指针Q.front指向下一个结点,如果出队的结此为尾结点,出队后队空,需要将Q.front和Q.rear都置为NULL","children":[],"payload":{"tag":"li","lines":"730,731"}},{"content":"入队: 建立一个新的结点,将新的结点插入到链表的尾部,修改队尾指针Q.rear指向新插入的结点。如果原队列为空,需要将队首指针也指向该结点","children":[],"payload":{"tag":"li","lines":"731,732"}},{"content":"【入队、出队操作,都需要考虑队空的情况下的特殊处理,不带头结点的队列导致队空队首和队尾指针都为NULL,麻烦】","children":[],"payload":{"tag":"li","lines":"732,734"}}],"payload":{"tag":"li","lines":"727,734"}},{"content":"\n

带头结点的链式队列

","children":[{"content":"【复杂的入队、出队操作就统一起来】","children":[],"payload":{"tag":"li","lines":"736,737"}},{"content":"队空:Q.front==Q.rear,都指向头结点,一般数据域可以为空","children":[],"payload":{"tag":"li","lines":"737,738"}},{"content":"出队:判断队列是否为空,队列非空则在队首移动指针,将队首指针指向下一个元素。如果队列中就一个元素,则出队后将成为空队,Q.rear==Q.front,最后释放元素内存空间。","children":[],"payload":{"tag":"li","lines":"738,739"}},{"content":"入队:将元素插入队尾,移动队尾指针,即便为空队列入队,由于队列带有头结点,此时就很好的避免操作队首指针了。","children":[],"payload":{"tag":"li","lines":"739,740"}},{"content":"子主题 5","children":[],"payload":{"tag":"li","lines":"740,742"}}],"payload":{"tag":"li","lines":"734,742"}},{"content":"\n

特别注意

","children":[{"content":"用单链表表示的链式队列非常适合频繁出队、入队、元素变化大的场景","children":[],"payload":{"tag":"li","lines":"744,745"}},{"content":"不存在队满情况,也不会出现溢出情况;","children":[],"payload":{"tag":"li","lines":"745,746"}},{"content":"链式队列不会出现存储分配不合理、“溢出”的情况,内存动态分配","children":[],"payload":{"tag":"li","lines":"746,748"}}],"payload":{"tag":"li","lines":"742,748"}},{"content":"\n

基本操作【带头结点】

","children":[{"content":"队列初始化","children":[],"payload":{"tag":"li","lines":"750,751"}},{"content":"判断队空:Q.front==Q.rear","children":[],"payload":{"tag":"li","lines":"751,752"}},{"content":"入队【重要】","children":[],"payload":{"tag":"li","lines":"752,753"}},{"content":"出队【重要】","children":[],"payload":{"tag":"li","lines":"753,755"}}],"payload":{"tag":"li","lines":"748,755"}}],"payload":{"tag":"li","lines":"720,755"}},{"content":"\n

双端队列

","children":[{"content":"\n

允许在两端都可以进行入队和出队操作的队列,元素的逻辑结构仍然是线性结构

","children":[],"payload":{"tag":"li","lines":"757,758"}},{"content":"\n

双端队列的两端分别称为前端和后端,两端都可以入队和出队

","children":[{"content":"进队:前端进的元素排列在队列中后端进的元素的前面,后端进的元素排列在队列前端进的元素后面;","children":[],"payload":{"tag":"li","lines":"760,761"}},{"content":"出队:无论是前端还是后端出队,先出的的元素排列在后出的元素的前面","children":[],"payload":{"tag":"li","lines":"761,763"}}],"payload":{"tag":"li","lines":"758,763"}},{"content":"\n

输入受限的双端队列:允许在一端进行插入和删除操作,但在另外一端只允许进行删除的双端队列

","children":[],"payload":{"tag":"li","lines":"763,764"}},{"content":"\n

输出受限的双端队列:允许在一端进行插入和删除曹组,但在另外一端只允许进行插入的双端队列

","children":[],"payload":{"tag":"li","lines":"764,766"}},{"content":"\n

如果限定双端队列从某个断点插入的元素只能从该端点删除,那么此时的双端队列就演变为两个栈底相邻的栈

","children":[],"payload":{"tag":"li","lines":"766,768"}}],"payload":{"tag":"li","lines":"755,768"}},{"content":"\n

补充

","children":[{"content":"最适合用来链队的链表是:带队首指针和队尾指针的非循环单链表","children":[],"payload":{"tag":"li","lines":"770,771"}},{"content":"栈和队列的逻辑结构都是线性表,存储结构可能是顺序的(顺序栈、顺序队列),也可能是链式的(链栈、链队)","children":[],"payload":{"tag":"li","lines":"771,772"}},{"content":"不论是顺序存储还是链式存储,栈和队列都只能进行顺序存取(本质是线性表)。数组是可以做到随机存取(本质是顺序表)","children":[],"payload":{"tag":"li","lines":"772,773"}},{"content":"队列先进先出的特性:先进队列的元素先出队列,后进队列的元素后出队列","children":[],"payload":{"tag":"li","lines":"773,775"}}],"payload":{"tag":"li","lines":"768,775"}}],"payload":{"tag":"li","lines":"718,775"}}],"payload":{"tag":"h3","lines":"651,652"}},{"content":"应用","children":[{"content":"\n

【栈】括号匹配

","children":[],"payload":{"tag":"li","lines":"777,778"}},{"content":"\n

【栈】表达式求值

","children":[],"payload":{"tag":"li","lines":"778,779"}},{"content":"\n

【栈】递归算法

","children":[{"content":"\n

定义: 如果在一个函数、过程或数据结构的定义中又应用了自身,那么这个函数、过程或者数据结构称为递归定义的,简称递归。

","children":[],"payload":{"tag":"li","lines":"781,782"}},{"content":"\n

递归通常把一个大型的复杂问题,层层转化为一个与原问题相似的规模较小的问题来求解

","children":[],"payload":{"tag":"li","lines":"782,783"}},{"content":"\n

斐波拉切数列算法优化

","children":[{"content":"使用非递归实现","children":[],"payload":{"tag":"li","lines":"785,786"}},{"content":"使用空间换效率,例如:数组","children":[],"payload":{"tag":"li","lines":"786,787"}},{"content":"使用缓存,存放数据","children":[],"payload":{"tag":"li","lines":"787,789"}}],"payload":{"tag":"li","lines":"783,789"}},{"content":"\n

必须注意递归模型不能是循环定义,
\n需要满足两个条件

","children":[{"content":"递归表达式(递归体)","children":[],"payload":{"tag":"li","lines":"792,793"}},{"content":"边界条件(递归出口),即:算法结束条件","children":[],"payload":{"tag":"li","lines":"793,795"}}],"payload":{"tag":"li","lines":"789,795"}},{"content":"\n

特点

","children":[{"content":"很大程度上减少了程序的代码量","children":[],"payload":{"tag":"li","lines":"797,798"}},{"content":"算法效率不高【重要特点】","children":[],"payload":{"tag":"li","lines":"798,799"}},{"content":"调用次数过多容易造成栈溢出","children":[],"payload":{"tag":"li","lines":"799,801"}}],"payload":{"tag":"li","lines":"795,801"}}],"payload":{"tag":"li","lines":"779,801"}},{"content":"\n

【队列】层次遍历

","children":[],"payload":{"tag":"li","lines":"801,802"}},{"content":"\n

【队列】计算机系统

","children":[{"content":"解决主机和外部设备之间速度不匹配的问题","children":[],"payload":{"tag":"li","lines":"804,805"}},{"content":"解决由多用户引起的资源竞争问题","children":[],"payload":{"tag":"li","lines":"805,807"}}],"payload":{"tag":"li","lines":"802,807"}}],"payload":{"tag":"h3","lines":"775,776"}},{"content":"特殊矩阵的压缩存储","children":[{"content":"\n

计算机图形学工程计算中占有举足轻重的地位。

","children":[],"payload":{"tag":"li","lines":"809,810"}},{"content":"\n

数组定义:由n(n≥1)个相同类型的数据元素构成的有限序列。

","children":[],"payload":{"tag":"li","lines":"810,811"}},{"content":"\n

重要概念

","children":[{"content":"【压缩存储】多个值相同的元素只分配一个存储空间,对零元素不分配存储空间---->节省存储空间。","children":[],"payload":{"tag":"li","lines":"813,814"}},{"content":"【特殊矩阵】具有很多相同矩阵元素或零元素,并且这些相同矩阵元素或零元素的分布有一定规律性的矩阵。","children":[],"payload":{"tag":"li","lines":"814,815"}},{"content":"【稀疏矩阵】矩阵元素个数s相对于矩阵中非零元素的个数t来说非常多、差距非常大,即s>>t的矩阵可以叫稀疏矩阵","children":[],"payload":{"tag":"li","lines":"815,817"}}],"payload":{"tag":"li","lines":"811,817"}},{"content":"\n

常见的特殊矩阵

","children":[{"content":"对称矩阵","children":[],"payload":{"tag":"li","lines":"819,820"}},{"content":"上、下三角矩阵","children":[],"payload":{"tag":"li","lines":"820,821"}},{"content":"对角矩阵(带状矩阵)","children":[],"payload":{"tag":"li","lines":"821,822"}},{"content":"......","children":[],"payload":{"tag":"li","lines":"822,824"}}],"payload":{"tag":"li","lines":"817,824"}},{"content":"\n

注意

","children":[{"content":"常规方法来存储稀疏矩阵,会想当浪费存储空间,所以稀疏矩阵只需要存储非零元素","children":[],"payload":{"tag":"li","lines":"826,827"}},{"content":"通常非零元素的分布是没有规律的,除了存储非零元素外,还需要存储元素所在位置的行和列","children":[],"payload":{"tag":"li","lines":"827,828"}},{"content":"寻相互存储三元组 <行标,列表,值>","children":[],"payload":{"tag":"li","lines":"828,829"}},{"content":"三元组的结点存储了行标(row)、列表(col)、值(value)三种信息,是主要用来存储稀疏矩阵的一种数据结构","children":[],"payload":{"tag":"li","lines":"829,831"}}],"payload":{"tag":"li","lines":"824,831"}},{"content":"\n

数组和线性表的关系

","children":[{"content":"数组是线性表的推广","children":[],"payload":{"tag":"li","lines":"833,834"}},{"content":"数组一旦被定义,维数和维界就不再改变","children":[],"payload":{"tag":"li","lines":"834,835"}},{"content":"除了结构的初始化和销毁外,数组只会有存取元素和修改元素的操作","children":[],"payload":{"tag":"li","lines":"835,837"}}],"payload":{"tag":"li","lines":"831,837"}},{"content":"\n

数组的存储结构

","children":[{"content":"按行优先","children":[],"payload":{"tag":"li","lines":"839,840"}},{"content":"按列优先","children":[],"payload":{"tag":"li","lines":"840,842"}}],"payload":{"tag":"li","lines":"837,842"}}],"payload":{"tag":"h3","lines":"807,808"}}],"payload":{"tag":"h2","lines":"538,539"}},{"content":"树与二叉树","children":[{"content":"树","children":[{"content":"\n

定义

","children":[],"payload":{"tag":"li","lines":"846,847"}},{"content":"\n

术语

","children":[{"content":"\n

结点

","children":[{"content":"祖先结点","children":[],"payload":{"tag":"li","lines":"851,852"}},{"content":"父子结点","children":[],"payload":{"tag":"li","lines":"852,853"}},{"content":"兄弟结点","children":[],"payload":{"tag":"li","lines":"853,854"}},{"content":"孩子结点","children":[],"payload":{"tag":"li","lines":"854,855"}},{"content":"子孙结点","children":[],"payload":{"tag":"li","lines":"855,856"}},{"content":"分支结点","children":[],"payload":{"tag":"li","lines":"856,857"}},{"content":"叶子结点(终端结点)","children":[],"payload":{"tag":"li","lines":"857,859"}}],"payload":{"tag":"li","lines":"849,859"}},{"content":"\n

","children":[{"content":"结点的度","children":[],"payload":{"tag":"li","lines":"861,862"}},{"content":"树的度","children":[],"payload":{"tag":"li","lines":"862,864"}}],"payload":{"tag":"li","lines":"859,864"}},{"content":"\n

结点的深度、高度、层次

","children":[],"payload":{"tag":"li","lines":"864,865"}},{"content":"\n

有序树和无序树

","children":[],"payload":{"tag":"li","lines":"865,866"}},{"content":"\n

路径和路径长度

","children":[],"payload":{"tag":"li","lines":"866,867"}},{"content":"\n

森林

","children":[],"payload":{"tag":"li","lines":"867,869"}}],"payload":{"tag":"li","lines":"847,869"}},{"content":"\n

性质

","children":[],"payload":{"tag":"li","lines":"869,871"}}],"payload":{"tag":"h3","lines":"844,845"}},{"content":"二叉树","children":[{"content":"定义和特性","children":[],"payload":{"tag":"li","lines":"873,874"}},{"content":"存储结构","children":[],"payload":{"tag":"li","lines":"874,875"}},{"content":"二叉树遍历","children":[],"payload":{"tag":"li","lines":"875,876"}},{"content":"线索二叉树","children":[],"payload":{"tag":"li","lines":"876,878"}}],"payload":{"tag":"h3","lines":"871,872"}},{"content":"树和森林","children":[{"content":"存储结构","children":[],"payload":{"tag":"li","lines":"880,881"}},{"content":"树、森林与二叉树转换","children":[],"payload":{"tag":"li","lines":"881,882"}},{"content":"遍历","children":[],"payload":{"tag":"li","lines":"882,883"}},{"content":"并查集应用","children":[],"payload":{"tag":"li","lines":"883,885"}}],"payload":{"tag":"h3","lines":"878,879"}},{"content":"应用","children":[{"content":"二叉排序树","children":[],"payload":{"tag":"li","lines":"887,888"}},{"content":"平衡二叉树","children":[],"payload":{"tag":"li","lines":"888,889"}},{"content":"哈夫曼树","children":[],"payload":{"tag":"li","lines":"889,890"}},{"content":"哈夫曼编码","children":[],"payload":{"tag":"li","lines":"890,892"}}],"payload":{"tag":"h3","lines":"885,886"}}],"payload":{"tag":"h2","lines":"842,843"}},{"content":"图论","children":[{"content":"定义","children":[],"payload":{"tag":"h3","lines":"894,895"}},{"content":"基本操作","children":[{"content":"Adjacent(G,x,y)","children":[],"payload":{"tag":"li","lines":"898,899"}},{"content":"Neighbors(G,x)","children":[],"payload":{"tag":"li","lines":"899,900"}},{"content":"InsertVertex(G,x)","children":[],"payload":{"tag":"li","lines":"900,901"}},{"content":"DeleteVertex(G,x)","children":[],"payload":{"tag":"li","lines":"901,902"}},{"content":"AddEdge(G,x,y)","children":[],"payload":{"tag":"li","lines":"902,903"}},{"content":"RemoveEdge(G,x,y)","children":[],"payload":{"tag":"li","lines":"903,904"}},{"content":"FirstNeighbor(G,x)","children":[],"payload":{"tag":"li","lines":"904,905"}},{"content":"NextNeighbor(G,x,y)","children":[],"payload":{"tag":"li","lines":"905,906"}},{"content":"Get_edge_value(G,x,y)","children":[],"payload":{"tag":"li","lines":"906,907"}},{"content":"Set_edge_value(G,x,y,v)","children":[],"payload":{"tag":"li","lines":"907,909"}}],"payload":{"tag":"h3","lines":"896,897"}},{"content":"存储及操作","children":[{"content":"邻接矩阵法","children":[],"payload":{"tag":"li","lines":"911,912"}},{"content":"邻接链表法","children":[],"payload":{"tag":"li","lines":"912,913"}},{"content":"十字链表","children":[],"payload":{"tag":"li","lines":"913,914"}},{"content":"邻接多重表","children":[],"payload":{"tag":"li","lines":"914,916"}}],"payload":{"tag":"h3","lines":"909,910"}},{"content":"图的遍历","children":[{"content":"广度优先搜索(BFS)","children":[],"payload":{"tag":"li","lines":"918,919"}},{"content":"深度优先搜索(DFS)","children":[],"payload":{"tag":"li","lines":"919,920"}},{"content":"连通性","children":[],"payload":{"tag":"li","lines":"920,922"}}],"payload":{"tag":"h3","lines":"916,917"}},{"content":"图的应用","children":[{"content":"最小生成树(MST)","children":[],"payload":{"tag":"li","lines":"924,925"}},{"content":"最短路径","children":[],"payload":{"tag":"li","lines":"925,926"}},{"content":"拓扑排序","children":[],"payload":{"tag":"li","lines":"926,927"}},{"content":"关键路劲","children":[],"payload":{"tag":"li","lines":"927,929"}}],"payload":{"tag":"h3","lines":"922,923"}}],"payload":{"tag":"h2","lines":"892,893"}},{"content":"查找","children":[{"content":"基本概念","children":[{"content":"\n

查找:在数据集合中寻找满足某种条件的数据元素的过程

","children":[],"payload":{"tag":"li","lines":"933,934"}},{"content":"\n

查找表(查找结构):用于查找的数据集合

","children":[{"content":"\n

数据元素(记录)的类型相同

","children":[],"payload":{"tag":"li","lines":"936,937"}},{"content":"\n

可以是一个数组或者链表等数据类型

","children":[],"payload":{"tag":"li","lines":"937,938"}},{"content":"\n

常见操作

","children":[{"content":"查询某个特定元素是否存在","children":[],"payload":{"tag":"li","lines":"940,941"}},{"content":"检索满足条件的特定元素的各种属性","children":[],"payload":{"tag":"li","lines":"941,942"}},{"content":"数据元素插入","children":[],"payload":{"tag":"li","lines":"942,943"}},{"content":"数据元素删除","children":[],"payload":{"tag":"li","lines":"943,945"}}],"payload":{"tag":"li","lines":"938,945"}}],"payload":{"tag":"li","lines":"934,945"}},{"content":"\n

静态查找表:不需要动态地修改查找表,与动态查找表对应

","children":[{"content":"顺序查找","children":[],"payload":{"tag":"li","lines":"947,948"}},{"content":"折半查找","children":[],"payload":{"tag":"li","lines":"948,949"}},{"content":"散列查找","children":[],"payload":{"tag":"li","lines":"949,950"}},{"content":"....","children":[],"payload":{"tag":"li","lines":"950,952"}}],"payload":{"tag":"li","lines":"945,952"}},{"content":"\n

动态查找表:需要动态地插入或者删除的查找表

","children":[{"content":"二叉排序树的查找","children":[],"payload":{"tag":"li","lines":"954,955"}},{"content":"散列查找","children":[],"payload":{"tag":"li","lines":"955,956"}},{"content":"....","children":[],"payload":{"tag":"li","lines":"956,958"}}],"payload":{"tag":"li","lines":"952,958"}},{"content":"\n

关键字:数据元素中唯一标识该元素的某个数据项的值

","children":[{"content":"使用关键字查找,查找结果应该是【唯一的】","children":[],"payload":{"tag":"li","lines":"960,961"}},{"content":"可以类比集合中不重复的key","children":[],"payload":{"tag":"li","lines":"961,962"}},{"content":"是不是想起了数据库的主键的概念????","children":[],"payload":{"tag":"li","lines":"962,964"}}],"payload":{"tag":"li","lines":"958,964"}},{"content":"\n

平均查找长度:所有查找过程中进行关键字的比较次数的平均值

","children":[{"content":"查找长度:一次查找需要比较的关键字次数","children":[],"payload":{"tag":"li","lines":"966,967"}},{"content":"【是衡量查找算法效率的最主要的指标】","children":[],"payload":{"tag":"li","lines":"967,969"}}],"payload":{"tag":"li","lines":"964,969"}}],"payload":{"tag":"h3","lines":"931,932"}},{"content":"顺序查找(线性查找)","children":[{"content":"\n

主要用于在线性表中进行查找

","children":[{"content":"一般的【无序线性表】的顺序查找","children":[],"payload":{"tag":"li","lines":"973,974"}},{"content":"按关键字【有序的顺序表】的顺序查找","children":[],"payload":{"tag":"li","lines":"974,975"}},{"content":"Tips:顺序表是指顺序存储的线性表,前面的有序才强调元素有序,顺序强调的是存储方式","children":[],"payload":{"tag":"li","lines":"975,977"}}],"payload":{"tag":"li","lines":"971,977"}},{"content":"\n

基于一般线性表的顺序查找

","children":[{"content":"\n

最直观的查找方式

","children":[],"payload":{"tag":"li","lines":"979,980"}},{"content":"\n

基本思想:从线性表的一端开始,逐个查询条件和关键字进行比对即可

","children":[],"payload":{"tag":"li","lines":"980,981"}},{"content":"\n

【重要】:哨兵的引入,可以避免很多不必要的判断语句,提高程序的效率

","children":[],"payload":{"tag":"li","lines":"981,982"}},{"content":"\n

平均查找长度

","children":[{"content":"\n

查找成功

","children":[{"content":"第i个元素需要进行(n-i+1)次关键字比较","children":[],"payload":{"tag":"li","lines":"986,987"}},{"content":"概率相等的情况下:(n+1)/2","children":[],"payload":{"tag":"li","lines":"987,989"}}],"payload":{"tag":"li","lines":"984,989"}},{"content":"\n

查找失败【没有找到元素】

","children":[{"content":"各关键字比较次数:(n+1)","children":[],"payload":{"tag":"li","lines":"991,992"}},{"content":"平均查找长度:(n+1)","children":[],"payload":{"tag":"li","lines":"992,994"}}],"payload":{"tag":"li","lines":"989,994"}}],"payload":{"tag":"li","lines":"982,994"}},{"content":"\n

综合分析

","children":[{"content":"【缺点】:n较大时,平均查找长度较大,效率低","children":[],"payload":{"tag":"li","lines":"996,997"}},{"content":"【优点】:对数据元素的存储没有要求,顺序存储和链式存储都可行。对数据元素的有序性也没有要求","children":[],"payload":{"tag":"li","lines":"997,998"}},{"content":"【注意】:线性的链表只能进行顺序查找","children":[],"payload":{"tag":"li","lines":"998,1000"}}],"payload":{"tag":"li","lines":"994,1000"}},{"content":"\n

通常情况下,查找表中记录的查找概率并不相等

","children":[],"payload":{"tag":"li","lines":"1000,1002"}}],"payload":{"tag":"li","lines":"977,1002"}},{"content":"\n

基于有序表的顺序查找

","children":[{"content":"\n

预先已经知道表是按照关键字有序的,基于【二叉判定树】来查找,不用全部遍历----->【降低顺序查找失败的平均查找长度】

","children":[],"payload":{"tag":"li","lines":"1004,1005"}},{"content":"\n

平均查找长度

","children":[{"content":"\n

查找成功

","children":[{"content":"和一般线性表的顺序查找一样","children":[],"payload":{"tag":"li","lines":"1009,1010"}},{"content":"概率相等的情况下:(n+1)/2","children":[],"payload":{"tag":"li","lines":"1010,1012"}}],"payload":{"tag":"li","lines":"1007,1012"}},{"content":"\n

查找失败

","children":[{"content":"到达是失败结点所查找的长度=失败结点父结点所在的层数【建议画画二叉判定树】","children":[],"payload":{"tag":"li","lines":"1014,1015"}},{"content":"查找概率相等时,平均查找长度:n/2 + n/(n+1)","children":[],"payload":{"tag":"li","lines":"1015,1017"}}],"payload":{"tag":"li","lines":"1012,1017"}}],"payload":{"tag":"li","lines":"1005,1017"}},{"content":"\n

【注意】:有序表的顺序查找中的线性表可以是链式存储结构的

","children":[],"payload":{"tag":"li","lines":"1017,1019"}}],"payload":{"tag":"li","lines":"1002,1019"}}],"payload":{"tag":"h3","lines":"969,970"}},{"content":"折半查找(二分查找)","children":[{"content":"\n

【注意】仅仅适用于有序的顺序表

","children":[],"payload":{"tag":"li","lines":"1021,1022"}},{"content":"\n

基本思想:首先与表中间位置元素的关键字比较,相等则查找成功,不相等则向左|向右继续与该部分中间元素比较......

","children":[],"payload":{"tag":"li","lines":"1022,1023"}},{"content":"\n

核心思路:左右双指针,互相往中间靠拢,可以用二叉判定树来辅助思考

","children":[],"payload":{"tag":"li","lines":"1023,1024"}},{"content":"\n

平均查找长度【计算非常重要】

","children":[{"content":"\n

查找成功

","children":[{"content":"折半查找法查到给定值的比较次数最多不会超过【判定树】的高度","children":[],"payload":{"tag":"li","lines":"1028,1029"}},{"content":"相等概率下,平均查找长度约等于log2(n+1) -1 ,【建议结合二叉树高度计算来理解】","children":[],"payload":{"tag":"li","lines":"1029,1031"}}],"payload":{"tag":"li","lines":"1026,1031"}},{"content":"\n

查找失败直接看例题.....

","children":[],"payload":{"tag":"li","lines":"1031,1033"}}],"payload":{"tag":"li","lines":"1024,1033"}},{"content":"\n

综合分析

","children":[{"content":"折半查找的时间复杂度为O(log2n), 平均情况下笔顺序查找O(n)的效率高","children":[],"payload":{"tag":"li","lines":"1035,1036"}},{"content":"折半查找需要方便地定位查找区域---->存储结构必须具有【随机存取】的特性","children":[],"payload":{"tag":"li","lines":"1036,1037"}},{"content":"【注意】仅仅适用于有序的顺序表,不适用链式存储结构,要求表按关键字有序排列","children":[],"payload":{"tag":"li","lines":"1037,1039"}}],"payload":{"tag":"li","lines":"1033,1039"}}],"payload":{"tag":"h3","lines":"1019,1020"}},{"content":"分块查找(索引顺序查找)","children":[{"content":"\n

具备顺序查找和折半查找的优点,既有动态结构,又能适用于快速查找

","children":[],"payload":{"tag":"li","lines":"1041,1042"}},{"content":"\n

是不是有点【希尔排序】和【直接插入排序、折半插入排序】的发展效果?????

","children":[],"payload":{"tag":"li","lines":"1042,1043"}},{"content":"\n

基本思想:查找表分成若干个子块

","children":[{"content":"块内元素可以无序,【块之间必须有序】","children":[],"payload":{"tag":"li","lines":"1045,1046"}},{"content":"前一块的最大关键字永远小于后一块的最小关键字","children":[],"payload":{"tag":"li","lines":"1046,1047"}},{"content":"【重要】:建立索引表,包含每个分块额最大关键字和第一个元素的地址(起始角标)","children":[],"payload":{"tag":"li","lines":"1047,1048"}},{"content":"索引表按关键字有序排列","children":[],"payload":{"tag":"li","lines":"1048,1050"}}],"payload":{"tag":"li","lines":"1043,1050"}},{"content":"\n

查找方式

","children":[{"content":"索引表:顺序查找或者折半查找","children":[],"payload":{"tag":"li","lines":"1052,1053"}},{"content":"块内:顺序查找<----- 块内可以无序","children":[],"payload":{"tag":"li","lines":"1053,1055"}}],"payload":{"tag":"li","lines":"1050,1055"}},{"content":"\n

【直接看书】平均查找长度=索引查找平均长度+块内查找的平均长度

","children":[],"payload":{"tag":"li","lines":"1055,1057"}}],"payload":{"tag":"h3","lines":"1039,1040"}},{"content":"【直接看书|视频,这部分我很迷糊】B树和B+树","children":[{"content":"\n

B树(多路平衡查找树)

","children":[{"content":"\n

基础概念

","children":[{"content":"\n

阶:所有结点的孩子结点数的最大值

","children":[],"payload":{"tag":"li","lines":"1063,1064"}},{"content":"\n

m阶B树(可能为空树)满足

","children":[{"content":"树中每个结点至多有m棵子树(即至多包含m-1个关键字)","children":[],"payload":{"tag":"li","lines":"1066,1067"}},{"content":"如果根结点不是终端结点,至少有两棵子树","children":[],"payload":{"tag":"li","lines":"1067,1068"}},{"content":"所有的叶结点都出现在同一个层次上,不带任何信息","children":[],"payload":{"tag":"li","lines":"1068,1069"}},{"content":"....","children":[],"payload":{"tag":"li","lines":"1069,1071"}}],"payload":{"tag":"li","lines":"1064,1071"}},{"content":"\n

B树是所有结点的平衡因子均为0的多路查找树

","children":[],"payload":{"tag":"li","lines":"1071,1073"}}],"payload":{"tag":"li","lines":"1061,1073"}},{"content":"\n

基本操作

","children":[{"content":"\n

高度

","children":[{"content":"B树的大部分操作需要的磁盘存取次数和B树的高度成正比","children":[],"payload":{"tag":"li","lines":"1077,1078"}},{"content":"B树的高度不包括最后的不带任何信息的叶结点所处的那一层【有的参考书,也包含这部分】","children":[],"payload":{"tag":"li","lines":"1078,1079"}},{"content":"【重要】如果每个结点重点额关键字个数达到最少,则容纳同样多关键字的B树的高度可以达到最大","children":[],"payload":{"tag":"li","lines":"1079,1080"}},{"content":"....","children":[],"payload":{"tag":"li","lines":"1080,1082"}}],"payload":{"tag":"li","lines":"1075,1082"}},{"content":"\n

查找

","children":[{"content":"\n

步骤

","children":[{"content":"在B树中找结点【磁盘中进行】","children":[],"payload":{"tag":"li","lines":"1086,1087"}},{"content":"在结点内找关键字【内存中进行】----> 采用【顺序查找法】或【折半查找法】","children":[],"payload":{"tag":"li","lines":"1087,1088"}},{"content":"【Tips】B树常存储在磁盘上,在磁盘上找到目标节点后,将结点中的信息读入到内存","children":[],"payload":{"tag":"li","lines":"1088,1090"}}],"payload":{"tag":"li","lines":"1084,1090"}},{"content":"\n

当查找到叶子结点,对应的指针为空指针,即树中没有对应的关键字

","children":[],"payload":{"tag":"li","lines":"1090,1092"}}],"payload":{"tag":"li","lines":"1082,1092"}},{"content":"\n

插入

","children":[{"content":"\n

插入操作比查找操作复杂多

","children":[],"payload":{"tag":"li","lines":"1094,1095"}},{"content":"\n

步骤

","children":[{"content":"\n

定位

","children":[{"content":"B树查找算法--->最底层中某个非叶结点","children":[],"payload":{"tag":"li","lines":"1099,1100"}},{"content":"【重要】B树的插入关键字一定是插入到最底层的某个非叶结点内","children":[],"payload":{"tag":"li","lines":"1100,1102"}}],"payload":{"tag":"li","lines":"1097,1102"}},{"content":"\n

插入

","children":[{"content":"插入结点关键字个数小于m----> 直接插入","children":[],"payload":{"tag":"li","lines":"1104,1105"}},{"content":"插入后检查插入结点内关键字个数,【大于m-1必须进行分裂】","children":[],"payload":{"tag":"li","lines":"1105,1107"}}],"payload":{"tag":"li","lines":"1102,1107"}},{"content":"\n

【直接看书】】注意分裂的方法

","children":[],"payload":{"tag":"li","lines":"1107,1109"}}],"payload":{"tag":"li","lines":"1095,1109"}}],"payload":{"tag":"li","lines":"1092,1109"}},{"content":"\n

删除(删除的关键字在终端结点)

","children":[{"content":"直接删除关键字","children":[],"payload":{"tag":"li","lines":"1111,1112"}},{"content":"兄弟够借","children":[],"payload":{"tag":"li","lines":"1112,1113"}},{"content":"兄弟不够借","children":[],"payload":{"tag":"li","lines":"1113,1115"}}],"payload":{"tag":"li","lines":"1109,1115"}}],"payload":{"tag":"li","lines":"1073,1115"}}],"payload":{"tag":"li","lines":"1059,1115"}},{"content":"\n

B+树的概念

","children":[{"content":"\n

B+树是根据数据库的需要需要的一中B树的变形树

","children":[],"payload":{"tag":"li","lines":"1117,1118"}},{"content":"\n

m阶的B+树需要满足的条件

","children":[{"content":"\n

每个分支结点最多有m棵子树(子结点)

","children":[],"payload":{"tag":"li","lines":"1120,1121"}},{"content":"\n

结点的字树个数与关键字相等

","children":[],"payload":{"tag":"li","lines":"1121,1122"}},{"content":"\n

非叶、根结点至少有两棵子树,其他分支结点至少有m/2(向上取整)棵子树

","children":[],"payload":{"tag":"li","lines":"1122,1123"}},{"content":"\n

所有叶结点包含全部关键字及指向相应记录的指针

","children":[{"content":"叶结点按关键字大小排列","children":[],"payload":{"tag":"li","lines":"1125,1126"}},{"content":"相邻结点按大小顺序相互链接起来","children":[],"payload":{"tag":"li","lines":"1126,1128"}}],"payload":{"tag":"li","lines":"1123,1128"}},{"content":"\n

【反复理解】所有的分支结点(理解为索引的索引)中仅仅包含它的各个子结点(下一级的索引快)中关键字的最大值和指向其子结点的指针

","children":[],"payload":{"tag":"li","lines":"1128,1129"}},{"content":"\n

....

","children":[],"payload":{"tag":"li","lines":"1129,1131"}}],"payload":{"tag":"li","lines":"1118,1131"}}],"payload":{"tag":"li","lines":"1115,1131"}}],"payload":{"tag":"h3","lines":"1057,1058"}},{"content":"散列(Hash)表","children":[{"content":"\n

基本概念

","children":[{"content":"散列函数:一个把查找表中的关键字映射成该关键字对应的地址(数组下标、索引、内存地址等)的函数","children":[],"payload":{"tag":"li","lines":"1135,1136"}},{"content":"散列冲突:散列函数把两个或者多个不同关键字映射到同一个地址上,【冲突总是不可避免的】","children":[],"payload":{"tag":"li","lines":"1136,1137"}},{"content":"同义词:发生散列冲突(碰撞)的不同关键字","children":[],"payload":{"tag":"li","lines":"1137,1138"}},{"content":"散列表:根据关键字直接访问的数据结构,是关键字和存储地址之间的一种直接映射关系","children":[],"payload":{"tag":"li","lines":"1138,1139"}},{"content":"理想情况下,散列表中查找时间复杂度为O(1),与元素个数无关","children":[],"payload":{"tag":"li","lines":"1139,1140"}},{"content":"基于【比较】的查找算法,查找效率取决于比较的次数","children":[],"payload":{"tag":"li","lines":"1140,1141"}},{"content":"以上可以结合哈希加密、布隆过滤器等工作中的编程概念去比对学习....","children":[],"payload":{"tag":"li","lines":"1141,1143"}}],"payload":{"tag":"li","lines":"1133,1143"}},{"content":"\n

散列函数

","children":[{"content":"\n

构造散列函数,需要注意

","children":[{"content":"散列函数的定义域【必须】要包含全部需要存储的关键字,值域的范围则依赖于散列表的大小或地址范围","children":[],"payload":{"tag":"li","lines":"1147,1148"}},{"content":"散列函数计算出来的地址应该能【等概率、均匀的】分布在整个存储空间,尽可能减少散列冲突---> 【压测】","children":[],"payload":{"tag":"li","lines":"1148,1149"}},{"content":"散列函数应该尽量简单,能够在较短时间内就计算出任一关键字对应的散列地址","children":[],"payload":{"tag":"li","lines":"1149,1151"}}],"payload":{"tag":"li","lines":"1145,1151"}},{"content":"\n

常用散列函数

","children":[{"content":"\n

直接定址法

","children":[{"content":"\n

直接去关键字的某个【线性函数值】为散列函数

","children":[],"payload":{"tag":"li","lines":"1155,1156"}},{"content":"\n

优点

","children":[{"content":"计算简单","children":[],"payload":{"tag":"li","lines":"1158,1159"}},{"content":"【不会产生冲突】","children":[],"payload":{"tag":"li","lines":"1159,1160"}},{"content":"适合关键字的分布【基本连续】的情况","children":[],"payload":{"tag":"li","lines":"1160,1162"}}],"payload":{"tag":"li","lines":"1156,1162"}},{"content":"\n

缺点:关键字分布不连续时,空位较多,将造成存储空间的浪费

","children":[],"payload":{"tag":"li","lines":"1162,1164"}}],"payload":{"tag":"li","lines":"1153,1164"}},{"content":"\n

除留余数法

","children":[{"content":"最简单、最常用的散列方法","children":[],"payload":{"tag":"li","lines":"1166,1167"}},{"content":"关键在于【选择被除数P】,等概率进行映射,尽可能减少冲突的可能性","children":[],"payload":{"tag":"li","lines":"1167,1169"}}],"payload":{"tag":"li","lines":"1164,1169"}},{"content":"\n

数字分析法

","children":[{"content":"适用于已知的关键字集合","children":[],"payload":{"tag":"li","lines":"1171,1172"}},{"content":"如果更换了关键字,就需要重新构造新的散列函数","children":[],"payload":{"tag":"li","lines":"1172,1174"}}],"payload":{"tag":"li","lines":"1169,1174"}},{"content":"\n

平方取中法

","children":[{"content":"取关键字的平方值的中间几位来作为散列地址","children":[],"payload":{"tag":"li","lines":"1176,1177"}},{"content":"适用于关键字的每一位取值都不够均匀或小于散列地址所需要的位数","children":[],"payload":{"tag":"li","lines":"1177,1179"}}],"payload":{"tag":"li","lines":"1174,1179"}},{"content":"\n

折叠法

","children":[{"content":"将关键字分割成位数相同的几部分,取这几部分的叠加作为散列地址","children":[],"payload":{"tag":"li","lines":"1181,1182"}},{"content":"关键字位数很多,每一位上数字分布大致均匀时,可以采用折叠法得到散列地址","children":[],"payload":{"tag":"li","lines":"1182,1184"}}],"payload":{"tag":"li","lines":"1179,1184"}},{"content":"\n

.....

","children":[],"payload":{"tag":"li","lines":"1184,1186"}}],"payload":{"tag":"li","lines":"1151,1186"}},{"content":"\n

不同的情况,不同的散列函数会发挥不同的性能,无法笼统的说那种散列函数最好。散列函数的目标都是为了将产生冲突的可能性尽可能地降低

","children":[],"payload":{"tag":"li","lines":"1186,1188"}}],"payload":{"tag":"li","lines":"1143,1188"}},{"content":"\n

处理冲突

","children":[{"content":"\n

【任何设计出来的散列函数都不可能绝对地避免冲突】,必须考虑在发生冲突时如何进行处理

","children":[],"payload":{"tag":"li","lines":"1190,1191"}},{"content":"\n

处理方法

","children":[{"content":"\n

开放定址法

","children":[{"content":"\n

概念:可以存放新表项的空闲地址,既向它的同义词表项开放,也向它的非同义词表项开放

","children":[],"payload":{"tag":"li","lines":"1195,1196"}},{"content":"\n

增量取值方法

","children":[{"content":"线性探测法","children":[],"payload":{"tag":"li","lines":"1198,1199"}},{"content":"平方探测法","children":[],"payload":{"tag":"li","lines":"1199,1200"}},{"content":"再散列法(双散列法)","children":[],"payload":{"tag":"li","lines":"1200,1201"}},{"content":"伪随机序列法","children":[],"payload":{"tag":"li","lines":"1201,1203"}}],"payload":{"tag":"li","lines":"1196,1203"}},{"content":"\n

注意事项

","children":[{"content":"不能随便【物理删除】表中已有元素,删除将会截断具有相同散列地址元素的查找地址,牵涉元素广","children":[],"payload":{"tag":"li","lines":"1205,1206"}},{"content":"删除元素需要【单独做标记】,采用【逻辑删除】","children":[],"payload":{"tag":"li","lines":"1206,1207"}},{"content":"逻辑删除会导致散列表表面上看上满的,实际上很多位置都是没有被利用的,【需要定期维护,将删除标记的\b元素物理删除】","children":[],"payload":{"tag":"li","lines":"1207,1209"}}],"payload":{"tag":"li","lines":"1203,1209"}}],"payload":{"tag":"li","lines":"1193,1209"}},{"content":"\n

拉链(链接)法

","children":[{"content":"概念:为避免非同义词发生冲突,可以把所有的同义词存储在一个线性链表中【由散列地址唯一标识】","children":[],"payload":{"tag":"li","lines":"1211,1212"}},{"content":"【重要】适用于经常进行插入和删除的情况","children":[],"payload":{"tag":"li","lines":"1212,1214"}}],"payload":{"tag":"li","lines":"1209,1214"}},{"content":"\n

拉链法处理冲突时不存在聚集现象,用线性探测法处理冲突时容易产生聚集现象

","children":[],"payload":{"tag":"li","lines":"1214,1216"}}],"payload":{"tag":"li","lines":"1191,1216"}}],"payload":{"tag":"li","lines":"1188,1216"}},{"content":"\n

性能分析

","children":[{"content":"\n

装填因子:一个表的装满程度 =(表中的记录数)/ (散列表的长度)

","children":[],"payload":{"tag":"li","lines":"1218,1219"}},{"content":"\n

查找效率取决于

","children":[{"content":"散列函数","children":[],"payload":{"tag":"li","lines":"1221,1222"}},{"content":"处理冲突的方法","children":[],"payload":{"tag":"li","lines":"1222,1223"}},{"content":"【重要】装填因子","children":[],"payload":{"tag":"li","lines":"1223,1225"}}],"payload":{"tag":"li","lines":"1219,1225"}},{"content":"\n

散列表的平均查找长度依赖于【散列表的填装因子】

","children":[],"payload":{"tag":"li","lines":"1225,1226"}},{"content":"\n

填装因子越大,表示装填的越“满”,发生冲突的可能性就越大

","children":[],"payload":{"tag":"li","lines":"1226,1227"}},{"content":"\n

散列冲突导致散列表在查找过程中也是需要进行比较的。【查找效率仍然用平均查找长度来度量】

","children":[],"payload":{"tag":"li","lines":"1227,1228"}},{"content":"\n

冲突的产生概率与装填因子(表中记录数和表长)的大小成正比

","children":[],"payload":{"tag":"li","lines":"1228,1230"}}],"payload":{"tag":"li","lines":"1216,1230"}}],"payload":{"tag":"h3","lines":"1131,1132"}},{"content":"模式匹配(字符串)","children":[{"content":"\n

简单模式匹配

","children":[{"content":"概念:第一个字符串(模式串)在第二串(主串)中的位置","children":[],"payload":{"tag":"li","lines":"1234,1235"}},{"content":"基本过程:从主串指定字符开始(一般第一个)和模式串的第一个字符逐个比较....","children":[],"payload":{"tag":"li","lines":"1235,1236"}},{"content":"时间复杂度:O(n*m),n、m分别为主串和模式串的长度","children":[],"payload":{"tag":"li","lines":"1236,1238"}}],"payload":{"tag":"li","lines":"1232,1238"}},{"content":"\n

【难点,直接看代码理解】KMP算法

","children":[{"content":"\n

【重要】是对简单模式匹配的改造,时间复杂度在O(n+m)的数量集上

","children":[],"payload":{"tag":"li","lines":"1240,1241"}},{"content":"\n

【建议手动模拟】基本过程

","children":[{"content":"整个匹配过程,没有进行指针回溯","children":[],"payload":{"tag":"li","lines":"1243,1244"}},{"content":"每趟比较过程让子串向后滑动到一个合适位置, 让这个位置上的字符和主串中的那个字符比较","children":[],"payload":{"tag":"li","lines":"1244,1245"}},{"content":"【重要】next数组的求解实际是对某个位置找到最长的公共前缀","children":[],"payload":{"tag":"li","lines":"1245,1247"}}],"payload":{"tag":"li","lines":"1241,1247"}}],"payload":{"tag":"li","lines":"1238,1247"}},{"content":"\n

总结比较

","children":[{"content":"简单模式匹配时间复杂度:O(n*m)","children":[],"payload":{"tag":"li","lines":"1249,1250"}},{"content":"KMP算法的时间复杂度为O(n+m)","children":[],"payload":{"tag":"li","lines":"1250,1251"}},{"content":"一般情况下,简单模式匹配的实际执行时间可以近似到O(n+m)","children":[],"payload":{"tag":"li","lines":"1251,1252"}},{"content":"【重要】KMP算法的重要特点是主串指针不回溯","children":[],"payload":{"tag":"li","lines":"1252,1254"}}],"payload":{"tag":"li","lines":"1247,1254"}}],"payload":{"tag":"h3","lines":"1230,1231"}}],"payload":{"tag":"h2","lines":"929,930"}},{"content":"排序","children":[{"content":"基本概念和定义","children":[{"content":"\n

排序:重新排列表中的元素,让表中的元素能够满足按照关键字递增或者递减的过程

","children":[],"payload":{"tag":"li","lines":"1258,1259"}},{"content":"\n

算法的稳定性【非常重要】

","children":[],"payload":{"tag":"li","lines":"1259,1260"}},{"content":"\n

排序算法是否具有稳定性并不能衡量一个算法的优劣【重要】

","children":[],"payload":{"tag":"li","lines":"1260,1261"}},{"content":"\n

内部排序:在排序期间元素全部存放在内存中的排序

","children":[{"content":"关键字比较","children":[],"payload":{"tag":"li","lines":"1263,1264"}},{"content":"移动元素","children":[],"payload":{"tag":"li","lines":"1264,1265"}},{"content":"不是所有的内部排序算法都是基于比较操作的,例如:基数排序属于内部排序算法,但不是基于比较实现的","children":[],"payload":{"tag":"li","lines":"1265,1267"}}],"payload":{"tag":"li","lines":"1261,1267"}},{"content":"\n

外部排序:在排序期间元素无法全部同时存放在内存中,必须在排序的过程中根据要求不断地在内、外存之间移动的排序。

","children":[],"payload":{"tag":"li","lines":"1267,1269"}}],"payload":{"tag":"h3","lines":"1256,1257"}},{"content":"插入排序","children":[{"content":"\n

基本思想:每次将一个待排序的记录,按关键字大小插入到前面已经排序好的子序列中,直到全部记录插入完成

","children":[],"payload":{"tag":"li","lines":"1271,1272"}},{"content":"\n

直接插入排序

","children":[{"content":"\n

最简单、最直观的插入排序算法

","children":[],"payload":{"tag":"li","lines":"1274,1275"}},{"content":"\n

性能分析

","children":[{"content":"\n

空间效率:仅仅使用到了常数个辅助单元,空间复杂度为O(1)

","children":[],"payload":{"tag":"li","lines":"1277,1278"}},{"content":"\n

时间效率:排序过程中,需要向左侧有序子表中逐个插入元素,操作n-1次,每次操作都分为关键字比较和元素移动这两部分的次数非常依赖于待排序表的初始状态【重要】

","children":[{"content":"最好的情况:元素已经有序,每个元素之需要比较一次,不用移动元素,O(n)","children":[],"payload":{"tag":"li","lines":"1280,1281"}},{"content":"最坏的情况:元素逆序,比较多次,移动多次,O(n^2)","children":[],"payload":{"tag":"li","lines":"1281,1282"}},{"content":"平均情况:总的比较次数和总的移动次数均约等于为(n^2)/4","children":[],"payload":{"tag":"li","lines":"1282,1284"}}],"payload":{"tag":"li","lines":"1278,1284"}},{"content":"\n

稳定性: 【稳定】的排序算法

","children":[],"payload":{"tag":"li","lines":"1284,1285"}},{"content":"\n

适用性

","children":[{"content":"顺序存储的线性表","children":[],"payload":{"tag":"li","lines":"1287,1288"}},{"content":"链式存储的线性表","children":[],"payload":{"tag":"li","lines":"1288,1289"}},{"content":"大部分排序算法都仅仅适用于顺序存储的线性表【重要】","children":[],"payload":{"tag":"li","lines":"1289,1291"}}],"payload":{"tag":"li","lines":"1285,1291"}}],"payload":{"tag":"li","lines":"1275,1291"}}],"payload":{"tag":"li","lines":"1272,1291"}},{"content":"\n

折半插入排序

","children":[{"content":"\n

简述

","children":[{"content":"\n

直接插入:边比较边移动

","children":[{"content":"确定插入位置","children":[],"payload":{"tag":"li","lines":"1297,1298"}},{"content":"腾出空间,元素复制到插入位置","children":[],"payload":{"tag":"li","lines":"1298,1300"}}],"payload":{"tag":"li","lines":"1295,1300"}},{"content":"\n

折半插入:先比较再统一移动

","children":[{"content":"确定好待插入的位置后,再统一地向后移动元素","children":[],"payload":{"tag":"li","lines":"1302,1304"}}],"payload":{"tag":"li","lines":"1300,1304"}}],"payload":{"tag":"li","lines":"1293,1304"}},{"content":"\n

性能分析

","children":[{"content":"折半插入排序的比较次数与待排序表的初始状态无关,仅仅取决于表中的元素个数n","children":[],"payload":{"tag":"li","lines":"1306,1307"}},{"content":"移动元素的次数相比直接插入排序没有任何的改变","children":[],"payload":{"tag":"li","lines":"1307,1308"}},{"content":"直接插入排序和折半插入排序的比较次数一样,依赖于排序表的初始状态","children":[],"payload":{"tag":"li","lines":"1308,1309"}},{"content":"时间复杂度:O(n^2)","children":[],"payload":{"tag":"li","lines":"1309,1310"}},{"content":"稳定性:【稳定】的排序算法","children":[],"payload":{"tag":"li","lines":"1310,1312"}}],"payload":{"tag":"li","lines":"1304,1312"}}],"payload":{"tag":"li","lines":"1291,1312"}},{"content":"\n

希尔排序(缩小增量排序)

","children":[{"content":"\n

基本思想:将待排序表分割成为若干个L[i,i+d,i+2d,....,i+kd]的子表,分别进行直接插入排序,当整个表元素“基本有序”的时候,再对全体记录进行一次直接插入排序

","children":[],"payload":{"tag":"li","lines":"1314,1315"}},{"content":"\n

基本实现步骤

","children":[{"content":"第一步:取一个小于n的步长d1 ,把待排序的表分成d1个组,所有距离为d1的倍数的记录放在同一个组中,对各组进行直接插入排序","children":[],"payload":{"tag":"li","lines":"1317,1318"}},{"content":"第二步:取第二个步长d2 < d1,重复第一步","children":[],"payload":{"tag":"li","lines":"1318,1320"}}],"payload":{"tag":"li","lines":"1315,1320"}},{"content":"\n

主要操作

","children":[{"content":"确认步长,分组","children":[],"payload":{"tag":"li","lines":"1322,1323"}},{"content":"对分组元素进行直接插入排序","children":[],"payload":{"tag":"li","lines":"1323,1325"}}],"payload":{"tag":"li","lines":"1320,1325"}},{"content":"\n

性能分析

","children":[{"content":"\n

空间效率:仅仅使用到了常数个辅助单元,O(1)

","children":[],"payload":{"tag":"li","lines":"1327,1328"}},{"content":"\n

时间效率

","children":[{"content":"\n

直接插入排序

","children":[{"content":"是顺序的,时间复杂度最最小,O(n)","children":[],"payload":{"tag":"li","lines":"1332,1333"}},{"content":"是逆序的,时间复杂度最大,O(n^2)","children":[],"payload":{"tag":"li","lines":"1333,1334"}},{"content":"是局部有序的,即部分顺序、部分逆序,此时的时间复杂度介于两者之间,O(n)~O(n^2)","children":[],"payload":{"tag":"li","lines":"1334,1336"}}],"payload":{"tag":"li","lines":"1330,1336"}},{"content":"\n

取决于增量序列函数

","children":[{"content":"优于折半插入排序","children":[],"payload":{"tag":"li","lines":"1338,1339"}},{"content":"最坏情况为O(n^2)","children":[],"payload":{"tag":"li","lines":"1339,1341"}}],"payload":{"tag":"li","lines":"1336,1341"}}],"payload":{"tag":"li","lines":"1328,1341"}},{"content":"\n

稳定性:【不稳定】,存在相同值元素分在不同的组进行直接插入排序

","children":[],"payload":{"tag":"li","lines":"1341,1342"}},{"content":"\n

适用性:仅仅适用于顺序存储的线性表,虽然采用过程中有采用直接插入排序,但增量序列不为1的时候,需要随机存取,链式存储的时候无法满足

","children":[],"payload":{"tag":"li","lines":"1342,1344"}}],"payload":{"tag":"li","lines":"1325,1344"}}],"payload":{"tag":"li","lines":"1312,1344"}}],"payload":{"tag":"h3","lines":"1269,1270"}},{"content":"交换排序","children":[{"content":"\n

冒泡排序

","children":[{"content":"\n

算法简单、思路直接、十分常用但考查少

","children":[],"payload":{"tag":"li","lines":"1348,1349"}},{"content":"\n

两元素交换方案

","children":[{"content":"临时变量法","children":[],"payload":{"tag":"li","lines":"1351,1352"}},{"content":"加减法","children":[],"payload":{"tag":"li","lines":"1352,1354"}}],"payload":{"tag":"li","lines":"1349,1354"}},{"content":"\n

空间效率

","children":[{"content":"仅使用了常数个辅助单元","children":[],"payload":{"tag":"li","lines":"1356,1357"}},{"content":"空间复杂度为O(1)","children":[],"payload":{"tag":"li","lines":"1357,1359"}}],"payload":{"tag":"li","lines":"1354,1359"}},{"content":"\n

时间效率

","children":[{"content":"\n

最好情况(顺序)

","children":[{"content":"比较次数:n-1","children":[],"payload":{"tag":"li","lines":"1363,1364"}},{"content":"移动次数:0","children":[],"payload":{"tag":"li","lines":"1364,1365"}},{"content":"时间复杂度为:O(n)","children":[],"payload":{"tag":"li","lines":"1365,1367"}}],"payload":{"tag":"li","lines":"1361,1367"}},{"content":"\n

最坏情况(逆序)

","children":[{"content":"比较次数:每趟比较(n-i)次","children":[],"payload":{"tag":"li","lines":"1369,1370"}},{"content":"移动次数:每趟移动3次","children":[],"payload":{"tag":"li","lines":"1370,1371"}},{"content":"时间复杂度为:O(n^2)","children":[],"payload":{"tag":"li","lines":"1371,1373"}}],"payload":{"tag":"li","lines":"1367,1373"}},{"content":"\n

时间复杂度为:O(n^2)

","children":[],"payload":{"tag":"li","lines":"1373,1375"}}],"payload":{"tag":"li","lines":"1359,1375"}},{"content":"\n

稳定性:【稳定】

","children":[],"payload":{"tag":"li","lines":"1375,1377"}}],"payload":{"tag":"li","lines":"1346,1377"}},{"content":"\n

快速排序

","children":[{"content":"\n

基于递归、理解困难、分而治之、关键基准pivot划分

","children":[],"payload":{"tag":"li","lines":"1379,1380"}},{"content":"\n

空间效率

","children":[{"content":"基于递归实现,需要借助递归工作栈来保存每一次递归调用的必要信息","children":[],"payload":{"tag":"li","lines":"1382,1383"}},{"content":"最坏情况:进行n-1次递归,O(n)","children":[],"payload":{"tag":"li","lines":"1383,1384"}},{"content":"最好情况: log2(n+1) 向上取整","children":[],"payload":{"tag":"li","lines":"1384,1385"}},{"content":"平均情况: O((n+1)以2为底的对数)","children":[],"payload":{"tag":"li","lines":"1385,1387"}}],"payload":{"tag":"li","lines":"1380,1387"}},{"content":"\n

时间效率

","children":[{"content":"\n

运行时间与划分操作Partition()函数【不对称相关】

","children":[],"payload":{"tag":"li","lines":"1389,1390"}},{"content":"\n

最坏情况

","children":[{"content":"数组长度为n","children":[],"payload":{"tag":"li","lines":"1392,1393"}},{"content":"左侧快排的数组长度为n-1,有n-1个元素【初始排序表基本有序】","children":[],"payload":{"tag":"li","lines":"1393,1394"}},{"content":"右侧快排的数组长度为0,有0个元素【初始排序表基本逆序】","children":[],"payload":{"tag":"li","lines":"1394,1395"}},{"content":"时间复杂度为:O(n^2)","children":[],"payload":{"tag":"li","lines":"1395,1397"}}],"payload":{"tag":"li","lines":"1390,1397"}},{"content":"\n

效率优化

","children":[{"content":"递归过程中划分得到的子序列规模较小时候,不再递归调用快速排序 ----->改用直接插入排序【时间复杂度最好O(n),性能好】","children":[],"payload":{"tag":"li","lines":"1399,1400"}},{"content":"尽量选择能将数据中分的基准值元素","children":[],"payload":{"tag":"li","lines":"1400,1401"}},{"content":"随机从当前表中选取基准值元素,几乎避免最坏情况的发生","children":[],"payload":{"tag":"li","lines":"1401,1403"}}],"payload":{"tag":"li","lines":"1397,1403"}}],"payload":{"tag":"li","lines":"1387,1403"}},{"content":"\n

稳定性:【不稳定】,存在值相同的元素,位置与最终位置不一致情况

","children":[],"payload":{"tag":"li","lines":"1403,1404"}},{"content":"\n

重要:【是所有内部算法中平均新能最优的排序算法】

","children":[],"payload":{"tag":"li","lines":"1404,1406"}}],"payload":{"tag":"li","lines":"1377,1406"}}],"payload":{"tag":"h3","lines":"1344,1345"}},{"content":"选择排序(TBD)","children":[{"content":"简单选择排序","children":[],"payload":{"tag":"li","lines":"1408,1409"}},{"content":"堆排序","children":[],"payload":{"tag":"li","lines":"1409,1411"}}],"payload":{"tag":"h3","lines":"1406,1407"}},{"content":"归并排序(TBD)","children":[],"payload":{"tag":"h3","lines":"1411,1412"}},{"content":"基数排序","children":[{"content":"\n

很特别的排序算法,【不是基于比较进行排序的】

","children":[],"payload":{"tag":"li","lines":"1415,1416"}},{"content":"\n

基本步骤【趟数取决于元素的最大位数】

","children":[{"content":"分配:依次考察线性表元素,放入队列中","children":[],"payload":{"tag":"li","lines":"1418,1419"}},{"content":"收集:各队列中结点一次首尾相接,组成新的线性表","children":[],"payload":{"tag":"li","lines":"1419,1421"}}],"payload":{"tag":"li","lines":"1416,1421"}},{"content":"\n

分类

","children":[{"content":"最高位优先排序【MSD】","children":[],"payload":{"tag":"li","lines":"1423,1424"}},{"content":"最低位优先排序【LSD】","children":[],"payload":{"tag":"li","lines":"1424,1426"}}],"payload":{"tag":"li","lines":"1421,1426"}},{"content":"\n

性能分析

","children":[{"content":"\n

空间效率:

","children":[{"content":"一趟排序需要r个队列的辅助存储空间,后续排序这些队列将会复用","children":[],"payload":{"tag":"li","lines":"1430,1431"}},{"content":"空间复杂度为:O(n)","children":[],"payload":{"tag":"li","lines":"1431,1433"}}],"payload":{"tag":"li","lines":"1428,1433"}},{"content":"\n

时间效率

","children":[{"content":"\n

进行d趟分配和收集操作

","children":[{"content":"一趟分配需要O(n)","children":[],"payload":{"tag":"li","lines":"1437,1438"}},{"content":"一趟收集需要O(r)","children":[],"payload":{"tag":"li","lines":"1438,1440"}}],"payload":{"tag":"li","lines":"1435,1440"}},{"content":"\n

平均情况:时间复杂度为O(d*(n+r))

","children":[],"payload":{"tag":"li","lines":"1440,1441"}},{"content":"\n

【重要】算法的时间效率与初始排序表状态无关,依赖于分配和收集操作

","children":[],"payload":{"tag":"li","lines":"1441,1443"}}],"payload":{"tag":"li","lines":"1433,1443"}},{"content":"\n

稳定性:【稳定】<----- 按位排序必须稳定

","children":[],"payload":{"tag":"li","lines":"1443,1445"}}],"payload":{"tag":"li","lines":"1426,1445"}}],"payload":{"tag":"h3","lines":"1413,1414"}},{"content":"内部排序","children":[{"content":"\n

各算法性能比较

","children":[{"content":"\n

从时间复杂度来看

","children":[{"content":"\n

平均情况O(n^2)

","children":[{"content":"直接插入排序","children":[],"payload":{"tag":"li","lines":"1453,1454"}},{"content":"简单选择排序","children":[],"payload":{"tag":"li","lines":"1454,1455"}},{"content":"冒泡排序","children":[],"payload":{"tag":"li","lines":"1455,1457"}}],"payload":{"tag":"li","lines":"1451,1457"}},{"content":"\n

最好情况O(n)【顺序情况】

","children":[{"content":"直接插入排序","children":[],"payload":{"tag":"li","lines":"1459,1460"}},{"content":"冒泡排序","children":[],"payload":{"tag":"li","lines":"1460,1462"}}],"payload":{"tag":"li","lines":"1457,1462"}},{"content":"\n

O(nlog2n)

","children":[{"content":"归并排序与初始序列的排序列无关,所有情况下时间复杂度都是O(nlog2n)","children":[],"payload":{"tag":"li","lines":"1464,1465"}},{"content":"堆排序利用数据结构堆,线性时间完成建堆,在O(nlog2n)内完成排序","children":[],"payload":{"tag":"li","lines":"1465,1466"}},{"content":"快排平均性能可以达到O(nlog2n)【性能常常优于其他排序算法】","children":[],"payload":{"tag":"li","lines":"1466,1468"}}],"payload":{"tag":"li","lines":"1462,1468"}},{"content":"\n

基于分治法的思想

","children":[{"content":"快速排序","children":[],"payload":{"tag":"li","lines":"1470,1471"}},{"content":"归并排序","children":[],"payload":{"tag":"li","lines":"1471,1473"}}],"payload":{"tag":"li","lines":"1468,1473"}},{"content":"\n

简单选择排序与序列的初始值状态无关

","children":[],"payload":{"tag":"li","lines":"1473,1474"}},{"content":"\n

希尔排序是插入排序的拓展,在大规模排序中可以达到很高的效率n^1.3~2

","children":[],"payload":{"tag":"li","lines":"1474,1476"}}],"payload":{"tag":"li","lines":"1449,1476"}},{"content":"\n

从空间复杂度来看

","children":[{"content":"\n

借助常数个辅助空间

","children":[{"content":"简单选择排序","children":[],"payload":{"tag":"li","lines":"1480,1481"}},{"content":"插入排序","children":[],"payload":{"tag":"li","lines":"1481,1482"}},{"content":"冒泡排序","children":[],"payload":{"tag":"li","lines":"1482,1483"}},{"content":"希尔排序","children":[],"payload":{"tag":"li","lines":"1483,1484"}},{"content":"堆排序","children":[],"payload":{"tag":"li","lines":"1484,1486"}}],"payload":{"tag":"li","lines":"1478,1486"}},{"content":"\n

快速排序在空间上只适用一个小的辅助栈,实现【递归】

","children":[{"content":"平均情况:O(log2n)","children":[],"payload":{"tag":"li","lines":"1488,1489"}},{"content":"最坏情况:O(n)","children":[],"payload":{"tag":"li","lines":"1489,1491"}}],"payload":{"tag":"li","lines":"1486,1491"}},{"content":"\n

二路归并排序需要较多的辅助空间,为O(n),可以采取时间换空间的思路来减少辅助空间【不建议,导致算法复杂】

","children":[],"payload":{"tag":"li","lines":"1491,1493"}}],"payload":{"tag":"li","lines":"1476,1493"}},{"content":"\n

从稳定性来看

","children":[{"content":"\n

稳定的

","children":[{"content":"插入排序","children":[],"payload":{"tag":"li","lines":"1497,1498"}},{"content":"冒泡排序","children":[],"payload":{"tag":"li","lines":"1498,1499"}},{"content":"归并排序","children":[],"payload":{"tag":"li","lines":"1499,1500"}},{"content":"基数排序","children":[],"payload":{"tag":"li","lines":"1500,1502"}}],"payload":{"tag":"li","lines":"1495,1502"}},{"content":"\n

不稳定

","children":[{"content":"简单选择排序","children":[],"payload":{"tag":"li","lines":"1504,1505"}},{"content":"快速排序","children":[],"payload":{"tag":"li","lines":"1505,1506"}},{"content":"希尔排序","children":[],"payload":{"tag":"li","lines":"1506,1507"}},{"content":"堆排序","children":[],"payload":{"tag":"li","lines":"1507,1509"}}],"payload":{"tag":"li","lines":"1502,1509"}}],"payload":{"tag":"li","lines":"1493,1509"}},{"content":"\n

从过程特征来看

","children":[{"content":"冒泡排序和堆排序每次循环都能拿到当前的最大值或最小值","children":[],"payload":{"tag":"li","lines":"1511,1512"}},{"content":"快速排序每次循环都能确定一个元素到最终位置上","children":[],"payload":{"tag":"li","lines":"1512,1513"}},{"content":"冒泡排序每一趟冒泡也能确定一个元素到最终位置上","children":[],"payload":{"tag":"li","lines":"1513,1515"}}],"payload":{"tag":"li","lines":"1509,1515"}}],"payload":{"tag":"li","lines":"1447,1515"}},{"content":"\n

算法运用

","children":[{"content":"\n

排序方法选取需要考虑的因素

","children":[{"content":"待排序的元素数目n","children":[],"payload":{"tag":"li","lines":"1519,1520"}},{"content":"元素本身信息量大小","children":[],"payload":{"tag":"li","lines":"1520,1521"}},{"content":"关键字的结构和分布情况","children":[],"payload":{"tag":"li","lines":"1521,1522"}},{"content":"稳定性的要求","children":[],"payload":{"tag":"li","lines":"1522,1523"}},{"content":"语言工具、存储结构、辅助空间大小","children":[],"payload":{"tag":"li","lines":"1523,1525"}}],"payload":{"tag":"li","lines":"1517,1525"}},{"content":"\n

排序算法小结

","children":[{"content":"\n

n很小时选择

","children":[{"content":"直接插入排序","children":[],"payload":{"tag":"li","lines":"1529,1530"}},{"content":"简单插入排序","children":[],"payload":{"tag":"li","lines":"1530,1532"}}],"payload":{"tag":"li","lines":"1527,1532"}},{"content":"\n

关键字基本【有序】时选择

","children":[{"content":"直接插入排序","children":[],"payload":{"tag":"li","lines":"1534,1535"}},{"content":"冒泡排序","children":[],"payload":{"tag":"li","lines":"1535,1537"}}],"payload":{"tag":"li","lines":"1532,1537"}},{"content":"\n

n较大时选择O(nlog2n)的排序

","children":[{"content":"快速排序【不稳定】","children":[],"payload":{"tag":"li","lines":"1539,1540"}},{"content":"堆排序【不稳定】","children":[],"payload":{"tag":"li","lines":"1540,1541"}},{"content":"归并排序【稳定】","children":[],"payload":{"tag":"li","lines":"1541,1543"}}],"payload":{"tag":"li","lines":"1537,1543"}},{"content":"\n

n很大且关键字位较少、可分解,建议选择【基数排序】

","children":[],"payload":{"tag":"li","lines":"1543,1544"}},{"content":"\n

信息量较大、元素较多,存储结构可以采用【链表】,减少不必要的时间去元素移动

","children":[],"payload":{"tag":"li","lines":"1544,1546"}}],"payload":{"tag":"li","lines":"1525,1546"}},{"content":"\n

快速排序被认为是基于比较的内部排序中最好的排序方法

","children":[],"payload":{"tag":"li","lines":"1546,1547"}},{"content":"\n

基于比较的排序算法中,每次比较两个关键字之后,只有两种情况(大于|小于)----> 二叉树, 时间复杂度至少为O(nlog2n)

","children":[],"payload":{"tag":"li","lines":"1547,1549"}}],"payload":{"tag":"li","lines":"1515,1549"}}],"payload":{"tag":"h3","lines":"1445,1446"}},{"content":"外部排序","children":[{"content":"\n

基本概念

","children":[{"content":"内部排序:排序方法在内存中进行的排序","children":[],"payload":{"tag":"li","lines":"1553,1554"}},{"content":"外部排序:排序过程中需要多次进行内存、外存交换,对外存文件中的记录进行排序后【仍然存放在外存原有文件中】的排序","children":[],"payload":{"tag":"li","lines":"1554,1555"}},{"content":"外部排序原因:对大文件进行排序,内存控件有限,文件中信息量庞大,无法将整个文件拷贝进内存中进行排序,需要多次调入内存进行排序","children":[],"payload":{"tag":"li","lines":"1555,1557"}}],"payload":{"tag":"li","lines":"1551,1557"}},{"content":"\n

外部排序方法

","children":[{"content":"\n

分类【依据外存设备的不同】

","children":[{"content":"磁盘文件排序","children":[],"payload":{"tag":"li","lines":"1561,1562"}},{"content":"磁带文件排序","children":[],"payload":{"tag":"li","lines":"1562,1564"}}],"payload":{"tag":"li","lines":"1559,1564"}},{"content":"\n

分布方式

","children":[{"content":"磁盘是直接存取设备","children":[],"payload":{"tag":"li","lines":"1566,1567"}},{"content":"磁带是顺序存取设备","children":[],"payload":{"tag":"li","lines":"1567,1569"}}],"payload":{"tag":"li","lines":"1564,1569"}},{"content":"\n

文件通常是【按块存储】在磁盘上,操作系统也是【按块读取】磁盘上的信息

","children":[],"payload":{"tag":"li","lines":"1569,1570"}},{"content":"\n

外部排序中时间代价主要考虑【访问磁盘的次数】,即I/O次数

","children":[],"payload":{"tag":"li","lines":"1570,1571"}},{"content":"\n

【通常采用归并排序方法】

","children":[],"payload":{"tag":"li","lines":"1571,1573"}}],"payload":{"tag":"li","lines":"1557,1573"}}],"payload":{"tag":"h3","lines":"1549,1550"}},{"content":"补充总结和复习","children":[{"content":"\n

元素个数不是很大(n<1000)

","children":[{"content":"直接插入排序【稳定】","children":[],"payload":{"tag":"li","lines":"1577,1578"}},{"content":"冒泡排序【稳定】","children":[],"payload":{"tag":"li","lines":"1578,1579"}},{"content":"简单选择排序【不稳定】","children":[],"payload":{"tag":"li","lines":"1579,1580"}},{"content":"空间复杂度都为O(1),只需要一个辅助元素","children":[],"payload":{"tag":"li","lines":"1580,1581"}},{"content":"平均时间复杂度都为O(n^2)","children":[],"payload":{"tag":"li","lines":"1581,1583"}}],"payload":{"tag":"li","lines":"1575,1583"}},{"content":"\n

中等规模的元素,希尔排序【不稳定】是非常好的选择,比直接插入排序要好(n越大越明显),不占用额外内存空间,减少直接排序次数

","children":[],"payload":{"tag":"li","lines":"1583,1584"}},{"content":"\n

元素个数很多(n很大)

","children":[{"content":"\n

快速排序【不稳定】

","children":[{"content":"\n

最通用、高效的内部排序算法

","children":[],"payload":{"tag":"li","lines":"1588,1589"}},{"content":"\n

平均时间复杂度为O(nlog2n)

","children":[],"payload":{"tag":"li","lines":"1589,1590"}},{"content":"\n

一般空间复杂度为O(log2n)

","children":[],"payload":{"tag":"li","lines":"1590,1591"}},{"content":"\n

最快情况,性能退化【元素基本有序时】

","children":[{"content":"时间复杂度提高到O(n^2)","children":[],"payload":{"tag":"li","lines":"1593,1594"}},{"content":"空间复杂度提高到O(n)","children":[],"payload":{"tag":"li","lines":"1594,1595"}},{"content":"解决方案: 三者(low,mid,high)取中,获取枢纽值【注意严版采用的是low,high】","children":[],"payload":{"tag":"li","lines":"1595,1597"}}],"payload":{"tag":"li","lines":"1591,1597"}}],"payload":{"tag":"li","lines":"1586,1597"}},{"content":"\n

堆排序【不稳定】

","children":[{"content":"高效的内部排序算法","children":[],"payload":{"tag":"li","lines":"1599,1600"}},{"content":"时间复杂度为O(nlog2n)","children":[],"payload":{"tag":"li","lines":"1600,1601"}},{"content":"没啥最坏情况,基本不需要额外的存储空间","children":[],"payload":{"tag":"li","lines":"1601,1603"}}],"payload":{"tag":"li","lines":"1597,1603"}},{"content":"\n

归并排序【稳定】

","children":[{"content":"性能与初始化元素序列无关","children":[],"payload":{"tag":"li","lines":"1605,1606"}},{"content":"时间复杂度总为O(nlog2n)","children":[],"payload":{"tag":"li","lines":"1606,1607"}},{"content":"【明显缺点】:需要O(n)的额外存储空间","children":[],"payload":{"tag":"li","lines":"1607,1609"}}],"payload":{"tag":"li","lines":"1603,1609"}},{"content":"\n

基数排序【稳定】

","children":[{"content":"特殊的排序算法","children":[],"payload":{"tag":"li","lines":"1611,1612"}},{"content":"除了对元素序列的关键字比较,更对关键字的不同位也进行处理和比较","children":[],"payload":{"tag":"li","lines":"1612,1613"}},{"content":"具有线性增长的时间复杂度O(d*(n+r)),适用性比较低、应用场景相对少","children":[],"payload":{"tag":"li","lines":"1613,1614"}},{"content":"需要额外的存储空间,一般用队列来实现桶","children":[],"payload":{"tag":"li","lines":"1614,1616"}}],"payload":{"tag":"li","lines":"1609,1616"}}],"payload":{"tag":"li","lines":"1584,1616"}},{"content":"\n

【重要】不同的排序算法缓和使用,往往能够对算法进行不错的改进,获得更好的性能

","children":[],"payload":{"tag":"li","lines":"1616,1617"}}],"payload":{"tag":"h3","lines":"1573,1574"}}],"payload":{"tag":"h2","lines":"1254,1255"}}],"payload":{"tag":"h1","lines":"6,7"}},null) diff --git a/docs/.vuepress/public/mind-map/os-map.html b/docs/.vuepress/public/mind-map/os-map.html index 77f0236..d57ea80 100644 --- a/docs/.vuepress/public/mind-map/os-map.html +++ b/docs/.vuepress/public/mind-map/os-map.html @@ -16,11 +16,11 @@ height: 100vh; } - + - + const markmap = getMarkmap(); + window.mm = markmap.Markmap.create( + "svg#mindmap", + (getOptions || markmap.deriveOptions)(jsonOptions), + root2 + ); + })(() => window.markmap,null,{"content":"操作系统","children":[{"content":"引论","children":[],"payload":{"tag":"h2","lines":"19,20"}},{"content":"进程管理","children":[],"payload":{"tag":"h2","lines":"21,22"}},{"content":"内存管理","children":[],"payload":{"tag":"h2","lines":"23,24"}},{"content":"一些总结","children":[],"payload":{"tag":"h2","lines":"25,26"}},{"content":"I/O管理","children":[],"payload":{"tag":"h2","lines":"27,28"}},{"content":"文件管理","children":[],"payload":{"tag":"h2","lines":"29,30"}}],"payload":{"tag":"h1","lines":"6,7"}},null) diff --git a/package.json b/package.json index 7c11a9f..7510e56 100644 --- a/package.json +++ b/package.json @@ -32,7 +32,7 @@ "@142vip/fairy-cli": "^0.0.3-alpha.13", "@142vip/utils": "^0.0.1-alpha.7", "@142vip/vuepress": "0.0.1-alpha.8", - "@vuepress/bundler-vite": "2.0.0-rc.17", + "@vuepress/bundler-vite": "2.0.0-rc.19", "markmap-cli": "^0.18.0", "only-allow": "^1.2.1", "simple-git-hooks": "^2.11.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 07fe6f2..fc13aef 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -19,10 +19,10 @@ importers: version: 0.0.1-alpha.11 '@142vip/vuepress': specifier: 0.0.1-alpha.8 - version: 0.0.1-alpha.8(wsn2pfqya5fyiv6ob52f3dhw6a) + version: 0.0.1-alpha.8(w24qbmfoqu7e7dya4pmnqambiq) '@vuepress/bundler-vite': - specifier: 2.0.0-rc.17 - version: 2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1) + specifier: 2.0.0-rc.19 + version: 2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1) markmap-cli: specifier: ^0.18.0 version: 0.18.1 @@ -34,7 +34,7 @@ importers: version: 2.11.1 vuepress: specifier: 2.0.0-rc.19 - version: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + version: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) xmind-embed-viewer: specifier: ^1.2.0 version: 1.2.0 @@ -192,138 +192,288 @@ packages: cpu: [ppc64] os: [aix] + '@esbuild/aix-ppc64@0.24.2': + resolution: {integrity: sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [aix] + '@esbuild/android-arm64@0.21.5': resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==} engines: {node: '>=12'} cpu: [arm64] os: [android] + '@esbuild/android-arm64@0.24.2': + resolution: {integrity: sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [android] + '@esbuild/android-arm@0.21.5': resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==} engines: {node: '>=12'} cpu: [arm] os: [android] + '@esbuild/android-arm@0.24.2': + resolution: {integrity: sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==} + engines: {node: '>=18'} + cpu: [arm] + os: [android] + '@esbuild/android-x64@0.21.5': resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==} engines: {node: '>=12'} cpu: [x64] os: [android] + '@esbuild/android-x64@0.24.2': + resolution: {integrity: sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==} + engines: {node: '>=18'} + cpu: [x64] + os: [android] + '@esbuild/darwin-arm64@0.21.5': resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==} engines: {node: '>=12'} cpu: [arm64] os: [darwin] + '@esbuild/darwin-arm64@0.24.2': + resolution: {integrity: sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==} + engines: {node: '>=18'} + cpu: [arm64] + os: [darwin] + '@esbuild/darwin-x64@0.21.5': resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==} engines: {node: '>=12'} cpu: [x64] os: [darwin] + '@esbuild/darwin-x64@0.24.2': + resolution: {integrity: sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==} + engines: {node: '>=18'} + cpu: [x64] + os: [darwin] + '@esbuild/freebsd-arm64@0.21.5': resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==} engines: {node: '>=12'} cpu: [arm64] os: [freebsd] + '@esbuild/freebsd-arm64@0.24.2': + resolution: {integrity: sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [freebsd] + '@esbuild/freebsd-x64@0.21.5': resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==} engines: {node: '>=12'} cpu: [x64] os: [freebsd] + '@esbuild/freebsd-x64@0.24.2': + resolution: {integrity: sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==} + engines: {node: '>=18'} + cpu: [x64] + os: [freebsd] + '@esbuild/linux-arm64@0.21.5': resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==} engines: {node: '>=12'} cpu: [arm64] os: [linux] + '@esbuild/linux-arm64@0.24.2': + resolution: {integrity: sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [linux] + '@esbuild/linux-arm@0.21.5': resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==} engines: {node: '>=12'} cpu: [arm] os: [linux] + '@esbuild/linux-arm@0.24.2': + resolution: {integrity: sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==} + engines: {node: '>=18'} + cpu: [arm] + os: [linux] + '@esbuild/linux-ia32@0.21.5': resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==} engines: {node: '>=12'} cpu: [ia32] os: [linux] + '@esbuild/linux-ia32@0.24.2': + resolution: {integrity: sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==} + engines: {node: '>=18'} + cpu: [ia32] + os: [linux] + '@esbuild/linux-loong64@0.21.5': resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==} engines: {node: '>=12'} cpu: [loong64] os: [linux] + '@esbuild/linux-loong64@0.24.2': + resolution: {integrity: sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==} + engines: {node: '>=18'} + cpu: [loong64] + os: [linux] + '@esbuild/linux-mips64el@0.21.5': resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==} engines: {node: '>=12'} cpu: [mips64el] os: [linux] + '@esbuild/linux-mips64el@0.24.2': + resolution: {integrity: sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==} + engines: {node: '>=18'} + cpu: [mips64el] + os: [linux] + '@esbuild/linux-ppc64@0.21.5': resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==} engines: {node: '>=12'} cpu: [ppc64] os: [linux] + '@esbuild/linux-ppc64@0.24.2': + resolution: {integrity: sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [linux] + '@esbuild/linux-riscv64@0.21.5': resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==} engines: {node: '>=12'} cpu: [riscv64] os: [linux] + '@esbuild/linux-riscv64@0.24.2': + resolution: {integrity: sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==} + engines: {node: '>=18'} + cpu: [riscv64] + os: [linux] + '@esbuild/linux-s390x@0.21.5': resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==} engines: {node: '>=12'} cpu: [s390x] os: [linux] + '@esbuild/linux-s390x@0.24.2': + resolution: {integrity: sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==} + engines: {node: '>=18'} + cpu: [s390x] + os: [linux] + '@esbuild/linux-x64@0.21.5': resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==} engines: {node: '>=12'} cpu: [x64] os: [linux] + '@esbuild/linux-x64@0.24.2': + resolution: {integrity: sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==} + engines: {node: '>=18'} + cpu: [x64] + os: [linux] + + '@esbuild/netbsd-arm64@0.24.2': + resolution: {integrity: sha512-wuLK/VztRRpMt9zyHSazyCVdCXlpHkKm34WUyinD2lzK07FAHTq0KQvZZlXikNWkDGoT6x3TD51jKQ7gMVpopw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [netbsd] + '@esbuild/netbsd-x64@0.21.5': resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==} engines: {node: '>=12'} cpu: [x64] os: [netbsd] + '@esbuild/netbsd-x64@0.24.2': + resolution: {integrity: sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==} + engines: {node: '>=18'} + cpu: [x64] + os: [netbsd] + + '@esbuild/openbsd-arm64@0.24.2': + resolution: {integrity: sha512-YQbi46SBct6iKnszhSvdluqDmxCJA+Pu280Av9WICNwQmMxV7nLRHZfjQzwbPs3jeWnuAhE9Jy0NrnJ12Oz+0A==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openbsd] + '@esbuild/openbsd-x64@0.21.5': resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==} engines: {node: '>=12'} cpu: [x64] os: [openbsd] + '@esbuild/openbsd-x64@0.24.2': + resolution: {integrity: sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==} + engines: {node: '>=18'} + cpu: [x64] + os: [openbsd] + '@esbuild/sunos-x64@0.21.5': resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==} engines: {node: '>=12'} cpu: [x64] os: [sunos] + '@esbuild/sunos-x64@0.24.2': + resolution: {integrity: sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==} + engines: {node: '>=18'} + cpu: [x64] + os: [sunos] + '@esbuild/win32-arm64@0.21.5': resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==} engines: {node: '>=12'} cpu: [arm64] os: [win32] + '@esbuild/win32-arm64@0.24.2': + resolution: {integrity: sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==} + engines: {node: '>=18'} + cpu: [arm64] + os: [win32] + '@esbuild/win32-ia32@0.21.5': resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==} engines: {node: '>=12'} cpu: [ia32] os: [win32] + '@esbuild/win32-ia32@0.24.2': + resolution: {integrity: sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==} + engines: {node: '>=18'} + cpu: [ia32] + os: [win32] + '@esbuild/win32-x64@0.21.5': resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==} engines: {node: '>=12'} cpu: [x64] os: [win32] + '@esbuild/win32-x64@0.24.2': + resolution: {integrity: sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==} + engines: {node: '>=18'} + cpu: [x64] + os: [win32] + '@eslint-community/eslint-plugin-eslint-comments@4.4.1': resolution: {integrity: sha512-lb/Z/MzbTf7CaVYM9WCFNQZ4L1yi3ev2fsFPF99h31ljhSEyUoyEsKsNWiU+qD1glbYTDJdqgyaLKtyTkkqtuQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -697,93 +847,30 @@ packages: resolution: {integrity: sha512-c83qWb22rNRuB0UaVCI0uRPNRr8Z0FWnEIvT47jiHAmOIUHbBOg5XvV7pM5x+rKn9HRpjxquDbXYSXr3fAKFcw==} engines: {node: '>=12'} - '@rollup/rollup-android-arm-eabi@4.24.3': - resolution: {integrity: sha512-ufb2CH2KfBWPJok95frEZZ82LtDl0A6QKTa8MoM+cWwDZvVGl5/jNb79pIhRvAalUu+7LD91VYR0nwRD799HkQ==} - cpu: [arm] - os: [android] - - '@rollup/rollup-android-arm64@4.24.3': - resolution: {integrity: sha512-iAHpft/eQk9vkWIV5t22V77d90CRofgR2006UiCjHcHJFVI1E0oBkQIAbz+pLtthFw3hWEmVB4ilxGyBf48i2Q==} - cpu: [arm64] - os: [android] - - '@rollup/rollup-darwin-arm64@4.24.3': - resolution: {integrity: sha512-QPW2YmkWLlvqmOa2OwrfqLJqkHm7kJCIMq9kOz40Zo9Ipi40kf9ONG5Sz76zszrmIZZ4hgRIkez69YnTHgEz1w==} + '@rollup/rollup-darwin-arm64@4.34.1': + resolution: {integrity: sha512-f2AJ7Qwx9z25hikXvg+asco8Sfuc5NCLg8rmqQBIOUoWys5sb/ZX9RkMZDPdnnDevXAMJA5AWLnRBmgdXGEUiA==} cpu: [arm64] os: [darwin] - '@rollup/rollup-darwin-x64@4.24.3': - resolution: {integrity: sha512-KO0pN5x3+uZm1ZXeIfDqwcvnQ9UEGN8JX5ufhmgH5Lz4ujjZMAnxQygZAVGemFWn+ZZC0FQopruV4lqmGMshow==} + '@rollup/rollup-darwin-x64@4.34.1': + resolution: {integrity: sha512-+/2JBrRfISCsWE4aEFXxd+7k9nWGXA8+wh7ZUHn/u8UDXOU9LN+QYKKhd57sIn6WRcorOnlqPMYFIwie/OHXWw==} cpu: [x64] os: [darwin] - '@rollup/rollup-freebsd-arm64@4.24.3': - resolution: {integrity: sha512-CsC+ZdIiZCZbBI+aRlWpYJMSWvVssPuWqrDy/zi9YfnatKKSLFCe6fjna1grHuo/nVaHG+kiglpRhyBQYRTK4A==} - cpu: [arm64] - os: [freebsd] - - '@rollup/rollup-freebsd-x64@4.24.3': - resolution: {integrity: sha512-F0nqiLThcfKvRQhZEzMIXOQG4EeX61im61VYL1jo4eBxv4aZRmpin6crnBJQ/nWnCsjH5F6J3W6Stdm0mBNqBg==} - cpu: [x64] - os: [freebsd] - - '@rollup/rollup-linux-arm-gnueabihf@4.24.3': - resolution: {integrity: sha512-KRSFHyE/RdxQ1CSeOIBVIAxStFC/hnBgVcaiCkQaVC+EYDtTe4X7z5tBkFyRoBgUGtB6Xg6t9t2kulnX6wJc6A==} - cpu: [arm] - os: [linux] - - '@rollup/rollup-linux-arm-musleabihf@4.24.3': - resolution: {integrity: sha512-h6Q8MT+e05zP5BxEKz0vi0DhthLdrNEnspdLzkoFqGwnmOzakEHSlXfVyA4HJ322QtFy7biUAVFPvIDEDQa6rw==} - cpu: [arm] - os: [linux] - - '@rollup/rollup-linux-arm64-gnu@4.24.3': - resolution: {integrity: sha512-fKElSyXhXIJ9pqiYRqisfirIo2Z5pTTve5K438URf08fsypXrEkVmShkSfM8GJ1aUyvjakT+fn2W7Czlpd/0FQ==} - cpu: [arm64] - os: [linux] - - '@rollup/rollup-linux-arm64-musl@4.24.3': - resolution: {integrity: sha512-YlddZSUk8G0px9/+V9PVilVDC6ydMz7WquxozToozSnfFK6wa6ne1ATUjUvjin09jp34p84milxlY5ikueoenw==} - cpu: [arm64] - os: [linux] - - '@rollup/rollup-linux-powerpc64le-gnu@4.24.3': - resolution: {integrity: sha512-yNaWw+GAO8JjVx3s3cMeG5Esz1cKVzz8PkTJSfYzE5u7A+NvGmbVFEHP+BikTIyYWuz0+DX9kaA3pH9Sqxp69g==} - cpu: [ppc64] - os: [linux] - - '@rollup/rollup-linux-riscv64-gnu@4.24.3': - resolution: {integrity: sha512-lWKNQfsbpv14ZCtM/HkjCTm4oWTKTfxPmr7iPfp3AHSqyoTz5AgLemYkWLwOBWc+XxBbrU9SCokZP0WlBZM9lA==} - cpu: [riscv64] - os: [linux] - - '@rollup/rollup-linux-s390x-gnu@4.24.3': - resolution: {integrity: sha512-HoojGXTC2CgCcq0Woc/dn12wQUlkNyfH0I1ABK4Ni9YXyFQa86Fkt2Q0nqgLfbhkyfQ6003i3qQk9pLh/SpAYw==} - cpu: [s390x] - os: [linux] - - '@rollup/rollup-linux-x64-gnu@4.24.3': - resolution: {integrity: sha512-mnEOh4iE4USSccBOtcrjF5nj+5/zm6NcNhbSEfR3Ot0pxBwvEn5QVUXcuOwwPkapDtGZ6pT02xLoPaNv06w7KQ==} + '@rollup/rollup-linux-x64-gnu@4.34.1': + resolution: {integrity: sha512-hzpleiKtq14GWjz3ahWvJXgU1DQC9DteiwcsY4HgqUJUGxZThlL66MotdUEK9zEo0PK/2ADeZGM9LIondE302A==} cpu: [x64] os: [linux] + libc: [glibc] - '@rollup/rollup-linux-x64-musl@4.24.3': - resolution: {integrity: sha512-rMTzawBPimBQkG9NKpNHvquIUTQPzrnPxPbCY1Xt+mFkW7pshvyIS5kYgcf74goxXOQk0CP3EoOC1zcEezKXhw==} + '@rollup/rollup-linux-x64-musl@4.34.1': + resolution: {integrity: sha512-jqtKrO715hDlvUcEsPn55tZt2TEiBvBtCMkUuU0R6fO/WPT7lO9AONjPbd8II7/asSiNVQHCMn4OLGigSuxVQA==} cpu: [x64] os: [linux] + libc: [musl] - '@rollup/rollup-win32-arm64-msvc@4.24.3': - resolution: {integrity: sha512-2lg1CE305xNvnH3SyiKwPVsTVLCg4TmNCF1z7PSHX2uZY2VbUpdkgAllVoISD7JO7zu+YynpWNSKAtOrX3AiuA==} - cpu: [arm64] - os: [win32] - - '@rollup/rollup-win32-ia32-msvc@4.24.3': - resolution: {integrity: sha512-9SjYp1sPyxJsPWuhOCX6F4jUMXGbVVd5obVpoVEi8ClZqo52ViZewA6eFz85y8ezuOA+uJMP5A5zo6Oz4S5rVQ==} - cpu: [ia32] - os: [win32] - - '@rollup/rollup-win32-x64-msvc@4.24.3': - resolution: {integrity: sha512-HGZgRFFYrMrP3TJlq58nR1xy8zHKId25vhmm5S9jETEfDf6xybPxsavFTJaufe2zgOGYJBskGlj49CwtEuFhWQ==} + '@rollup/rollup-win32-x64-msvc@4.34.1': + resolution: {integrity: sha512-k3MVFD9Oq+laHkw2N2v7ILgoa9017ZMF/inTtHzyTVZjYs9cSH18sdyAf6spBAJIGwJ5UaC7et2ZH1WCdlhkMw==} cpu: [x64] os: [win32] @@ -978,9 +1065,6 @@ packages: '@types/node@22.10.2': resolution: {integrity: sha512-Xxr6BBRCAOQixvonOye19wnzyDiUtTeqldOOmj3CkeblonbccA12PFwlufvRdrpjXxqnmUaeiU5EOA+7s5diUQ==} - '@types/node@22.8.6': - resolution: {integrity: sha512-tosuJYKrIqjQIlVCM4PEGxOmyg3FCPa/fViuJChnGeEIhjA46oy8FMVoF9su1/v8PNs2a8Q0iFNyOx0uOF91nw==} - '@types/normalize-package-data@2.4.4': resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} @@ -1065,11 +1149,11 @@ packages: '@ungap/structured-clone@1.2.1': resolution: {integrity: sha512-fEzPV3hSkSMltkw152tJKNARhOupqbH96MZWyRjNaYZOMIzbrTeQDG+MTc6Mr2pgzFQzFxAfmhGDNP5QK++2ZA==} - '@vitejs/plugin-vue@5.1.4': - resolution: {integrity: sha512-N2XSI2n3sQqp5w7Y/AN/L2XDjBIRGqXko+eDp42sydYSBeJuSm5a1sLf8zakmo8u7tA8NmBgoDLA1HeOESjp9A==} + '@vitejs/plugin-vue@5.2.1': + resolution: {integrity: sha512-cxh314tzaWwOLqVes2gnnCtvBDcM1UMdn+iFR+UjAn411dPT3tOmqrJjbMd7koZpMAmBM/GqeV4n9ge7JSiJJQ==} engines: {node: ^18.0.0 || >=20.0.0} peerDependencies: - vite: ^5.0.0 + vite: ^5.0.0 || ^6.0.0 vue: ^3.2.25 '@vitest/eslint-plugin@1.1.7': @@ -1088,107 +1172,63 @@ packages: '@vscode/markdown-it-katex@1.1.1': resolution: {integrity: sha512-3KTlbsRBPJQLE2YmLL7K6nunTlU+W9T5+FjfNdWuIUKgxSS6HWLQHaO3L4MkJi7z7MpIPpY+g4N+cWNBPE/MSA==} - '@vue/compiler-core@3.5.12': - resolution: {integrity: sha512-ISyBTRMmMYagUxhcpyEH0hpXRd/KqDU4ymofPgl2XAkY9ZhQ+h0ovEZJIiPop13UmR/54oA2cgMDjgroRelaEw==} - '@vue/compiler-core@3.5.13': resolution: {integrity: sha512-oOdAkwqUfW1WqpwSYJce06wvt6HljgY3fGeM9NcVA1HaYOij3mZG9Rkysn0OHuyUAGMbEbARIpsG+LPVlBJ5/Q==} - '@vue/compiler-dom@3.5.12': - resolution: {integrity: sha512-9G6PbJ03uwxLHKQ3P42cMTi85lDRvGLB2rSGOiQqtXELat6uI4n8cNz9yjfVHRPIu+MsK6TE418Giruvgptckg==} - '@vue/compiler-dom@3.5.13': resolution: {integrity: sha512-ZOJ46sMOKUjO3e94wPdCzQ6P1Lx/vhp2RSvfaab88Ajexs0AHeV0uasYhi99WPaogmBlRHNRuly8xV75cNTMDA==} - '@vue/compiler-sfc@3.5.12': - resolution: {integrity: sha512-2k973OGo2JuAa5+ZlekuQJtitI5CgLMOwgl94BzMCsKZCX/xiqzJYzapl4opFogKHqwJk34vfsaKpfEhd1k5nw==} - '@vue/compiler-sfc@3.5.13': resolution: {integrity: sha512-6VdaljMpD82w6c2749Zhf5T9u5uLBWKnVue6XWxprDobftnletJ8+oel7sexFfM3qIxNmVE7LSFGTpv6obNyaQ==} - '@vue/compiler-ssr@3.5.12': - resolution: {integrity: sha512-eLwc7v6bfGBSM7wZOGPmRavSWzNFF6+PdRhE+VFJhNCgHiF8AM7ccoqcv5kBXA2eWUfigD7byekvf/JsOfKvPA==} - '@vue/compiler-ssr@3.5.13': resolution: {integrity: sha512-wMH6vrYHxQl/IybKJagqbquvxpWCuVYpoUJfCqFZwa/JY1GdATAQ+TgVtgrwwMZ0D07QhA99rs/EAAWfvG6KpA==} '@vue/devtools-api@6.6.4': resolution: {integrity: sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==} - '@vue/devtools-api@7.6.2': - resolution: {integrity: sha512-NCT0ujqlwAhoFvCsAG7G5qS8w/A/dhvFSt2BhmNxyqgpYDrf9CG1zYyWLQkE3dsZ+5lCT6ULUic2VKNaE07Vzg==} - '@vue/devtools-api@7.6.8': resolution: {integrity: sha512-ma6dY/sZR36zALVsV1W7eC57c6IJPXsy8SNgZn1PLVWU4z4dPn5TIBmnF4stmdJ4sQcixqKaQ8pwjbMPzEZwiA==} - '@vue/devtools-kit@7.6.2': - resolution: {integrity: sha512-k61BxHRmcTtIQZFouF9QWt9nCCNtSdw12lhg8VNtHq5/XOBGD+ewiK27a40UJ8UPYoCJvi80hbvbYr5E/Zeu1g==} - '@vue/devtools-kit@7.6.8': resolution: {integrity: sha512-JhJ8M3sPU+v0P2iZBF2DkdmR9L0dnT5RXJabJqX6o8KtFs3tebdvfoXV2Dm3BFuqeECuMJIfF1aCzSt+WQ4wrw==} - '@vue/devtools-shared@7.6.2': - resolution: {integrity: sha512-lcjyJ7hCC0W0kNwnCGMLVTMvDLoZgjcq9BvboPgS+6jQyDul7fpzRSKTGtGhCHoxrDox7qBAKGbAl2Rcf7GE1A==} - '@vue/devtools-shared@7.6.8': resolution: {integrity: sha512-9MBPO5Z3X1nYGFqTJyohl6Gmf/J7UNN1oicHdyzBVZP4jnhZ4c20MgtaHDIzWmHDHCMYVS5bwKxT3jxh7gOOKA==} - '@vue/reactivity@3.5.12': - resolution: {integrity: sha512-UzaN3Da7xnJXdz4Okb/BGbAaomRHc3RdoWqTzlvd9+WBR5m3J39J1fGcHes7U3za0ruYn/iYy/a1euhMEHvTAg==} - '@vue/reactivity@3.5.13': resolution: {integrity: sha512-NaCwtw8o48B9I6L1zl2p41OHo/2Z4wqYGGIK1Khu5T7yxrn+ATOixn/Udn2m+6kZKB/J7cuT9DbWWhRxqixACg==} '@vue/repl@4.4.2': resolution: {integrity: sha512-MEAsBK/YzMFGINOBzqM40XTeIYAUsg7CqvXvD5zi0rhYEQrPfEUIdexmMjdm7kVKsKmcvIHxrFK2DFC35m9kHw==} - '@vue/runtime-core@3.5.12': - resolution: {integrity: sha512-hrMUYV6tpocr3TL3Ad8DqxOdpDe4zuQY4HPY3X/VRh+L2myQO8MFXPAMarIOSGNu0bFAjh1yBkMPXZBqCk62Uw==} - '@vue/runtime-core@3.5.13': resolution: {integrity: sha512-Fj4YRQ3Az0WTZw1sFe+QDb0aXCerigEpw418pw1HBUKFtnQHWzwojaukAs2X/c9DQz4MQ4bsXTGlcpGxU/RCIw==} - '@vue/runtime-dom@3.5.12': - resolution: {integrity: sha512-q8VFxR9A2MRfBr6/55Q3umyoN7ya836FzRXajPB6/Vvuv0zOPL+qltd9rIMzG/DbRLAIlREmnLsplEF/kotXKA==} - '@vue/runtime-dom@3.5.13': resolution: {integrity: sha512-dLaj94s93NYLqjLiyFzVs9X6dWhTdAlEAciC3Moq7gzAc13VJUdCnjjRurNM6uTLFATRHexHCTu/Xp3eW6yoog==} - '@vue/server-renderer@3.5.12': - resolution: {integrity: sha512-I3QoeDDeEPZm8yR28JtY+rk880Oqmj43hreIBVTicisFTx/Dl7JpG72g/X7YF8hnQD3IFhkky5i2bPonwrTVPg==} - peerDependencies: - vue: 3.5.12 - '@vue/server-renderer@3.5.13': resolution: {integrity: sha512-wAi4IRJV/2SAW3htkTlB+dHeRmpTiVIK1OGLWV1yeStVSebSQQOwGwIq0D3ZIoBj2C2qpgz5+vX9iEBkTdk5YA==} peerDependencies: vue: 3.5.13 - '@vue/shared@3.5.12': - resolution: {integrity: sha512-L2RPSAwUFbgZH20etwrXyVyCBu9OxRSi8T/38QsvnkJyvq2LufW2lDCOzm7t/U9C1mkhJGWYfCuFBCmIuNivrg==} - '@vue/shared@3.5.13': resolution: {integrity: sha512-/hnE/qP5ZoGpol0a5mDi45bOd7t3tjYJBjsgCsivow7D48cJeV5l05RD82lPqi7gRiphZM37rnhW1l6ZoCNNnQ==} - '@vuepress/bundler-vite@2.0.0-rc.17': - resolution: {integrity: sha512-K2osFYuAX1y1m50IxSA7ykM0wdxvQBD3LsYsqAltMk/yM26cF8BjTOfpAbfBw4/gTbQHv2pzJbfUgOm9o/LbvQ==} + '@vuepress/bundler-vite@2.0.0-rc.19': + resolution: {integrity: sha512-Vn0wEVRcdAld+8NJeELSwrj5JEPObRn0xpRWtAau/UwVWHmMLo16RRkTvXdjSiwpDWeP/9ztC5buyTXVoeb7Dw==} - '@vuepress/bundlerutils@2.0.0-rc.17': - resolution: {integrity: sha512-+Hxv3N8XRr6TTzBcXtaXlzq8r3YY/+HLeQHZ9mCGAhBXRCv5BeBgjpMP4BiQT1jd1FxfxRguyyFwioC6g5dOdA==} + '@vuepress/bundlerutils@2.0.0-rc.19': + resolution: {integrity: sha512-ln5htptK14OMJV3yeGRxAwYhSkVxrTwEHEaifeWrFvjuNxj2kLmkCl7MDdzr232jSOWwkCcmbOyafbxMsaRDkQ==} '@vuepress/cli@2.0.0-rc.19': resolution: {integrity: sha512-QFicPNIj3RZAJbHoLbeYlPJsPchnQLGuw0n8xv0eeUi9ejEXO1huWA8sLoPbTGdiDW+PHr1MHnaVMkyUfwaKcQ==} hasBin: true - '@vuepress/client@2.0.0-rc.17': - resolution: {integrity: sha512-dnCU+spOgVw1V7vU/Gkj6e7bkfsGbezUuPAQMiWkBdrNTZ2BJctOHhhi+F8OBRR02hZ9JldlToA5vBoVsPKRpw==} - '@vuepress/client@2.0.0-rc.19': resolution: {integrity: sha512-vUAU6n4qmtXqthxkb4LHq0D+VWSDenwBDf0jUs7RaBLuOVrbPtmH/hs4k1vLIlGdwC3Zs/G6tlB4UmuZiiwR8Q==} - '@vuepress/core@2.0.0-rc.17': - resolution: {integrity: sha512-Ux5zAqnSAAnaE4qFgIGkGRMWObyZaAeRk6Pj30tVRCC7zkYIRWXii7sUK6aehPyugQz02TKMvW5FlrJeA40ogw==} - '@vuepress/core@2.0.0-rc.19': resolution: {integrity: sha512-rvmBPMIWS2dey/2QjxZoO0OcrUU46NE3mSLk3oU7JOP0cG7xvRxf6U1OXiwYLC3fPO4g6XbHiKe6gihkmL6VDA==} @@ -1211,9 +1251,6 @@ packages: '@vueuse/core': optional: true - '@vuepress/markdown@2.0.0-rc.17': - resolution: {integrity: sha512-eIwRostE3t3zsJzPjmOufVyyBpsaWQkZluk6o0i1e9WLW3EoinKrDZdzej0Jw8IQlq6nvOPD2JMFWyXwu8fv7w==} - '@vuepress/markdown@2.0.0-rc.19': resolution: {integrity: sha512-6jgUXhpEK55PEEGtPhz7Hq/JqTbLU8n9w2D7emXiK2FYcbeKpjoRIbVRzmzB/dXeK3NzHChANu2IIqpOT6Ba1w==} @@ -1385,15 +1422,9 @@ packages: peerDependencies: vuepress: 2.0.0-rc.18 - '@vuepress/shared@2.0.0-rc.17': - resolution: {integrity: sha512-meBWLJCCHqj+edHY+U2q64Q8AIqqlHzau6T0j95Q58WkWOQdgn8MUCx1/TXXh2mKVyTt4g6Kgci/3fK2Hi97HQ==} - '@vuepress/shared@2.0.0-rc.19': resolution: {integrity: sha512-xaDeZxX0Qetc2Y6/lrzO6M/40i3LmMm7Fk85bOftBBOaNehZ24RdsmIHBJDDv+bTUv+DBF++1/mOtbt6DBRzEA==} - '@vuepress/utils@2.0.0-rc.17': - resolution: {integrity: sha512-5QFG8arU01QxJm+pzaNpNxfvSy3ttSjouwcefyr/6dO/cKbnjgmmaDOoy3UKnHYQtEDycybNOg4ebn2AHslEKw==} - '@vuepress/utils@2.0.0-rc.19': resolution: {integrity: sha512-cgzk8/aJquZKgFMNTuqdjbU5NrCzrPmdTyhYBcmliL/6N/He1OTWn3PD9QWUGJNODb1sPRJpklZnCpU07waLmg==} @@ -2127,6 +2158,11 @@ packages: engines: {node: '>=12'} hasBin: true + esbuild@0.24.2: + resolution: {integrity: sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==} + engines: {node: '>=18'} + hasBin: true + escalade@3.2.0: resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} engines: {node: '>=6'} @@ -3291,10 +3327,6 @@ packages: resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} engines: {node: '>= 0.8.0'} - ora@8.1.0: - resolution: {integrity: sha512-GQEkNkH/GHOhPFXcqZs3IDahXEQcQxsSjEkK4KvEEST4t7eNzoMjxTzef+EZ+JluDEV+Raoi3WQ2CflnRdSVnQ==} - engines: {node: '>=18'} - ora@8.1.1: resolution: {integrity: sha512-YWielGi1XzG1UTvOaCFaNgEnuhZVMSHYkW/FQ7UX8O26PtlpdM84c0f7wLPlkvx2RfiQmnzd61d/MGxmpQeJPw==} engines: {node: '>=18'} @@ -3461,10 +3493,6 @@ packages: postcss-value-parser@4.2.0: resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} - postcss@8.4.47: - resolution: {integrity: sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==} - engines: {node: ^10 || ^12 || >=14} - postcss@8.4.49: resolution: {integrity: sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==} engines: {node: ^10 || ^12 || >=14} @@ -3627,8 +3655,8 @@ packages: robust-predicates@3.0.2: resolution: {integrity: sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==} - rollup@4.24.3: - resolution: {integrity: sha512-HBW896xR5HGmoksbi3JBDtmVzWiPAYqp7wip50hjQ67JbDz61nyoMPdqu1DvVW9asYb2M65Z20ZHsyJCMqMyDg==} + rollup@4.34.1: + resolution: {integrity: sha512-iYZ/+PcdLYSGfH3S+dGahlW/RWmsqDhLgj1BT9DH/xXJ0ggZN7xkdP9wipPNjjNLczI+fmMLmTB9pye+d2r4GQ==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true @@ -3971,10 +3999,6 @@ packages: stylis@4.3.4: resolution: {integrity: sha512-osIBl6BGUmSfDkyH2mB7EFvCJntXDrLhKjHTRj/rK6xLH0yuPrHULDRQzKokSOD4VoorhtKpfcfW1GAntu8now==} - superjson@2.2.1: - resolution: {integrity: sha512-8iGv75BYOa0xRJHK5vRLEjE2H/i4lulTjzpUXic3Eg8akftYjkmQDa8JARQ42rlczXyFR3IeRoeFCc7RxHsYZA==} - engines: {node: '>=16'} - superjson@2.2.2: resolution: {integrity: sha512-5JRxVqC8I8NuOUjzBbvVJAKNM8qoVuH0O77h4WInc/qC2q5IreqKxYwgkga3PfA22OayK2ikceb/B26dztPl+Q==} engines: {node: '>=16'} @@ -4124,9 +4148,6 @@ packages: ufo@1.5.4: resolution: {integrity: sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==} - undici-types@6.19.8: - resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==} - undici-types@6.20.0: resolution: {integrity: sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==} @@ -4220,22 +4241,27 @@ packages: resolution: {integrity: sha512-7413cfsyk6F0TtjiAA1QK1uyxgiTb6i0YFJSsQlXSJQaQQ/ZeQ/Fa4KDfC6EFCLPHoHPyW0Ejs5a6HFF64JXLQ==} engines: {node: '>=18'} - vite@5.4.10: - resolution: {integrity: sha512-1hvaPshuPUtxeQ0hsVH3Mud0ZanOLwVTneA1EgbAM5LhaZEqyPWGRQ7BtaMvUrTDeEaC8pxtj6a6jku3x4z6SQ==} - engines: {node: ^18.0.0 || >=20.0.0} + vite@6.0.11: + resolution: {integrity: sha512-4VL9mQPKoHy4+FE0NnRE/kbY51TOfaknxAjt3fJbGJxhIpBZiqVzlZDEesWWsuREXHwNdAoOFZ9MkPEVXczHwg==} + engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} hasBin: true peerDependencies: - '@types/node': ^18.0.0 || >=20.0.0 + '@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0 + jiti: '>=1.21.0' less: '*' lightningcss: ^1.21.0 sass: '*' sass-embedded: '*' stylus: '*' sugarss: '*' - terser: ^5.4.0 + terser: ^5.16.0 + tsx: ^4.8.1 + yaml: ^2.4.2 peerDependenciesMeta: '@types/node': optional: true + jiti: + optional: true less: optional: true lightningcss: @@ -4250,6 +4276,10 @@ packages: optional: true terser: optional: true + tsx: + optional: true + yaml: + optional: true vue-demi@0.14.10: resolution: {integrity: sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==} @@ -4268,24 +4298,11 @@ packages: peerDependencies: eslint: '>=6.0.0' - vue-router@4.4.5: - resolution: {integrity: sha512-4fKZygS8cH1yCyuabAXGUAsyi1b2/o/OKgu/RUb+znIYOxPRxdkytJEx+0wGcpBE1pX6vUgh5jwWOKRGvuA/7Q==} - peerDependencies: - vue: ^3.2.0 - vue-router@4.5.0: resolution: {integrity: sha512-HDuk+PuH5monfNuY+ct49mNmkCRK4xJAV9Ts4z9UFc4rzdDnxQLyCMGGc8pKhZhHTVzfanpNwB/lwqevcBwI4w==} peerDependencies: vue: ^3.2.0 - vue@3.5.12: - resolution: {integrity: sha512-CLVZtXtn2ItBIi/zHZ0Sg1Xkb7+PU32bJJ8Bmy7ts3jxXTcbfsEfBivFYYWz1Hur+lalqGAh65Coin0r+HRUfg==} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - vue@3.5.13: resolution: {integrity: sha512-wmeiSMxkZCSc+PM2w2VRsOYAZC8GdipNFRTsLSfodVqI9mbejKeXEGr8SckuLnrQPGe3oJN5c3K0vpoU9q/wCQ==} peerDependencies: @@ -4374,7 +4391,6 @@ packages: vuepress-plugin-search-pro@2.0.0-rc.57: resolution: {integrity: sha512-d+gl1G5GYGHhAlF6BofAWFaLNn0h9euULGJEJ2/2GtWsBgkppEI0pPrGDlJ1t7KAo/67eOX0/VNf4CrRSp1GFA==} engines: {node: '>=18.19.0', npm: '>=8', pnpm: '>=7', yarn: '>=2'} - deprecated: Please use @vuepress/plugin-slimsearch instead peerDependencies: sass: ^1.79.3 sass-embedded: ^1.79.3 @@ -4655,13 +4671,13 @@ snapshots: dayjs: 1.11.13 inquirer: 7.3.3 - '@142vip/vuepress@0.0.1-alpha.8(wsn2pfqya5fyiv6ob52f3dhw6a)': + '@142vip/vuepress@0.0.1-alpha.8(w24qbmfoqu7e7dya4pmnqambiq)': dependencies: '@vue/repl': 4.4.2 - '@vuepress/bundler-vite': 2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1) - '@vuepress/plugin-markdown-image': 2.0.0-rc.56(markdown-it@14.1.0)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-markdown-tab': 2.0.0-rc.56(markdown-it@14.1.0)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-redirect': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/bundler-vite': 2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1) + '@vuepress/plugin-markdown-image': 2.0.0-rc.56(markdown-it@14.1.0)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-markdown-tab': 2.0.0-rc.56(markdown-it@14.1.0)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-redirect': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) dashjs: 4.7.4 hls.js: 1.5.17 mermaid: 10.9.3 @@ -4670,9 +4686,9 @@ snapshots: unicorn-magic: 0.3.0 vidstack: 1.12.12 vue: 3.5.13(typescript@5.6.3) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) - vuepress-plugin-search-pro: 2.0.0-rc.57(sass-embedded@1.80.5)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - vuepress-theme-hope: 2.0.0-rc.59(@vue/repl@4.4.2)(dashjs@4.7.4)(hls.js@1.5.17)(katex@0.16.18)(markdown-it@14.1.0)(mermaid@10.9.3)(sass-embedded@1.80.5)(typescript@5.6.3)(vidstack@1.12.12)(vuepress-plugin-search-pro@2.0.0-rc.57(sass-embedded@1.80.5)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))))(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress-plugin-search-pro: 2.0.0-rc.57(sass-embedded@1.80.5)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + vuepress-theme-hope: 2.0.0-rc.59(@vue/repl@4.4.2)(dashjs@4.7.4)(hls.js@1.5.17)(katex@0.16.18)(markdown-it@14.1.0)(mermaid@10.9.3)(sass-embedded@1.80.5)(typescript@5.6.3)(vidstack@1.12.12)(vuepress-plugin-search-pro@2.0.0-rc.57(sass-embedded@1.80.5)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))))(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) '@antfu/eslint-config@2.27.3(@typescript-eslint/utils@8.12.2(eslint@8.55.0)(typescript@5.6.3))(@vue/compiler-sfc@3.5.13)(eslint@8.55.0)(typescript@5.6.3)': dependencies: @@ -4780,72 +4796,147 @@ snapshots: '@esbuild/aix-ppc64@0.21.5': optional: true + '@esbuild/aix-ppc64@0.24.2': + optional: true + '@esbuild/android-arm64@0.21.5': optional: true + '@esbuild/android-arm64@0.24.2': + optional: true + '@esbuild/android-arm@0.21.5': optional: true + '@esbuild/android-arm@0.24.2': + optional: true + '@esbuild/android-x64@0.21.5': optional: true + '@esbuild/android-x64@0.24.2': + optional: true + '@esbuild/darwin-arm64@0.21.5': optional: true + '@esbuild/darwin-arm64@0.24.2': + optional: true + '@esbuild/darwin-x64@0.21.5': optional: true + '@esbuild/darwin-x64@0.24.2': + optional: true + '@esbuild/freebsd-arm64@0.21.5': optional: true + '@esbuild/freebsd-arm64@0.24.2': + optional: true + '@esbuild/freebsd-x64@0.21.5': optional: true + '@esbuild/freebsd-x64@0.24.2': + optional: true + '@esbuild/linux-arm64@0.21.5': optional: true + '@esbuild/linux-arm64@0.24.2': + optional: true + '@esbuild/linux-arm@0.21.5': optional: true + '@esbuild/linux-arm@0.24.2': + optional: true + '@esbuild/linux-ia32@0.21.5': optional: true + '@esbuild/linux-ia32@0.24.2': + optional: true + '@esbuild/linux-loong64@0.21.5': optional: true + '@esbuild/linux-loong64@0.24.2': + optional: true + '@esbuild/linux-mips64el@0.21.5': optional: true + '@esbuild/linux-mips64el@0.24.2': + optional: true + '@esbuild/linux-ppc64@0.21.5': optional: true + '@esbuild/linux-ppc64@0.24.2': + optional: true + '@esbuild/linux-riscv64@0.21.5': optional: true + '@esbuild/linux-riscv64@0.24.2': + optional: true + '@esbuild/linux-s390x@0.21.5': optional: true + '@esbuild/linux-s390x@0.24.2': + optional: true + '@esbuild/linux-x64@0.21.5': optional: true + '@esbuild/linux-x64@0.24.2': + optional: true + + '@esbuild/netbsd-arm64@0.24.2': + optional: true + '@esbuild/netbsd-x64@0.21.5': optional: true + '@esbuild/netbsd-x64@0.24.2': + optional: true + + '@esbuild/openbsd-arm64@0.24.2': + optional: true + '@esbuild/openbsd-x64@0.21.5': optional: true + '@esbuild/openbsd-x64@0.24.2': + optional: true + '@esbuild/sunos-x64@0.21.5': optional: true + '@esbuild/sunos-x64@0.24.2': + optional: true + '@esbuild/win32-arm64@0.21.5': optional: true + '@esbuild/win32-arm64@0.24.2': + optional: true + '@esbuild/win32-ia32@0.21.5': optional: true + '@esbuild/win32-ia32@0.24.2': + optional: true + '@esbuild/win32-x64@0.21.5': optional: true + '@esbuild/win32-x64@0.24.2': + optional: true + '@eslint-community/eslint-plugin-eslint-comments@4.4.1(eslint@8.55.0)': dependencies: escape-string-regexp: 4.0.0 @@ -5192,58 +5283,19 @@ snapshots: '@pnpm/network.ca-file': 1.0.2 config-chain: 1.1.13 - '@rollup/rollup-android-arm-eabi@4.24.3': + '@rollup/rollup-darwin-arm64@4.34.1': optional: true - '@rollup/rollup-android-arm64@4.24.3': + '@rollup/rollup-darwin-x64@4.34.1': optional: true - '@rollup/rollup-darwin-arm64@4.24.3': + '@rollup/rollup-linux-x64-gnu@4.34.1': optional: true - '@rollup/rollup-darwin-x64@4.24.3': + '@rollup/rollup-linux-x64-musl@4.34.1': optional: true - '@rollup/rollup-freebsd-arm64@4.24.3': - optional: true - - '@rollup/rollup-freebsd-x64@4.24.3': - optional: true - - '@rollup/rollup-linux-arm-gnueabihf@4.24.3': - optional: true - - '@rollup/rollup-linux-arm-musleabihf@4.24.3': - optional: true - - '@rollup/rollup-linux-arm64-gnu@4.24.3': - optional: true - - '@rollup/rollup-linux-arm64-musl@4.24.3': - optional: true - - '@rollup/rollup-linux-powerpc64le-gnu@4.24.3': - optional: true - - '@rollup/rollup-linux-riscv64-gnu@4.24.3': - optional: true - - '@rollup/rollup-linux-s390x-gnu@4.24.3': - optional: true - - '@rollup/rollup-linux-x64-gnu@4.24.3': - optional: true - - '@rollup/rollup-linux-x64-musl@4.24.3': - optional: true - - '@rollup/rollup-win32-arm64-msvc@4.24.3': - optional: true - - '@rollup/rollup-win32-ia32-msvc@4.24.3': - optional: true - - '@rollup/rollup-win32-x64-msvc@4.24.3': + '@rollup/rollup-win32-x64-msvc@4.34.1': optional: true '@sec-ant/readable-stream@0.4.1': {} @@ -5428,7 +5480,7 @@ snapshots: '@types/fs-extra@11.0.4': dependencies: '@types/jsonfile': 6.1.4 - '@types/node': 22.8.6 + '@types/node': 22.10.2 '@types/geojson@7946.0.15': {} @@ -5442,7 +5494,7 @@ snapshots: '@types/jsonfile@6.1.4': dependencies: - '@types/node': 22.8.6 + '@types/node': 22.10.2 '@types/katex@0.16.7': {} @@ -5479,10 +5531,6 @@ snapshots: dependencies: undici-types: 6.20.0 - '@types/node@22.8.6': - dependencies: - undici-types: 6.19.8 - '@types/normalize-package-data@2.4.4': {} '@types/sax@1.2.7': @@ -5584,10 +5632,10 @@ snapshots: '@ungap/structured-clone@1.2.1': {} - '@vitejs/plugin-vue@5.1.4(vite@5.4.10(@types/node@22.10.2)(sass-embedded@1.80.5))(vue@3.5.12(typescript@5.6.3))': + '@vitejs/plugin-vue@5.2.1(vite@6.0.11(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(yaml@2.6.1))(vue@3.5.13(typescript@5.6.3))': dependencies: - vite: 5.4.10(@types/node@22.10.2)(sass-embedded@1.80.5) - vue: 3.5.12(typescript@5.6.3) + vite: 6.0.11(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(yaml@2.6.1) + vue: 3.5.13(typescript@5.6.3) '@vitest/eslint-plugin@1.1.7(@typescript-eslint/utils@8.12.2(eslint@8.55.0)(typescript@5.6.3))(eslint@8.55.0)(typescript@5.6.3)': dependencies: @@ -5600,14 +5648,6 @@ snapshots: dependencies: katex: 0.16.18 - '@vue/compiler-core@3.5.12': - dependencies: - '@babel/parser': 7.26.2 - '@vue/shared': 3.5.12 - entities: 4.5.0 - estree-walker: 2.0.2 - source-map-js: 1.2.1 - '@vue/compiler-core@3.5.13': dependencies: '@babel/parser': 7.26.2 @@ -5616,28 +5656,11 @@ snapshots: estree-walker: 2.0.2 source-map-js: 1.2.1 - '@vue/compiler-dom@3.5.12': - dependencies: - '@vue/compiler-core': 3.5.12 - '@vue/shared': 3.5.12 - '@vue/compiler-dom@3.5.13': dependencies: '@vue/compiler-core': 3.5.13 '@vue/shared': 3.5.13 - '@vue/compiler-sfc@3.5.12': - dependencies: - '@babel/parser': 7.26.2 - '@vue/compiler-core': 3.5.12 - '@vue/compiler-dom': 3.5.12 - '@vue/compiler-ssr': 3.5.12 - '@vue/shared': 3.5.12 - estree-walker: 2.0.2 - magic-string: 0.30.12 - postcss: 8.4.47 - source-map-js: 1.2.1 - '@vue/compiler-sfc@3.5.13': dependencies: '@babel/parser': 7.26.2 @@ -5650,11 +5673,6 @@ snapshots: postcss: 8.4.49 source-map-js: 1.2.1 - '@vue/compiler-ssr@3.5.12': - dependencies: - '@vue/compiler-dom': 3.5.12 - '@vue/shared': 3.5.12 - '@vue/compiler-ssr@3.5.13': dependencies: '@vue/compiler-dom': 3.5.13 @@ -5662,24 +5680,10 @@ snapshots: '@vue/devtools-api@6.6.4': {} - '@vue/devtools-api@7.6.2': - dependencies: - '@vue/devtools-kit': 7.6.2 - '@vue/devtools-api@7.6.8': dependencies: '@vue/devtools-kit': 7.6.8 - '@vue/devtools-kit@7.6.2': - dependencies: - '@vue/devtools-shared': 7.6.2 - birpc: 0.2.19 - hookable: 5.5.3 - mitt: 3.0.1 - perfect-debounce: 1.0.0 - speakingurl: 14.0.1 - superjson: 2.2.1 - '@vue/devtools-kit@7.6.8': dependencies: '@vue/devtools-shared': 7.6.8 @@ -5690,41 +5694,21 @@ snapshots: speakingurl: 14.0.1 superjson: 2.2.2 - '@vue/devtools-shared@7.6.2': - dependencies: - rfdc: 1.4.1 - '@vue/devtools-shared@7.6.8': dependencies: rfdc: 1.4.1 - '@vue/reactivity@3.5.12': - dependencies: - '@vue/shared': 3.5.12 - '@vue/reactivity@3.5.13': dependencies: '@vue/shared': 3.5.13 '@vue/repl@4.4.2': {} - '@vue/runtime-core@3.5.12': - dependencies: - '@vue/reactivity': 3.5.12 - '@vue/shared': 3.5.12 - '@vue/runtime-core@3.5.13': dependencies: '@vue/reactivity': 3.5.13 '@vue/shared': 3.5.13 - '@vue/runtime-dom@3.5.12': - dependencies: - '@vue/reactivity': 3.5.12 - '@vue/runtime-core': 3.5.12 - '@vue/shared': 3.5.12 - csstype: 3.1.3 - '@vue/runtime-dom@3.5.13': dependencies: '@vue/reactivity': 3.5.13 @@ -5732,38 +5716,30 @@ snapshots: '@vue/shared': 3.5.13 csstype: 3.1.3 - '@vue/server-renderer@3.5.12(vue@3.5.12(typescript@5.6.3))': - dependencies: - '@vue/compiler-ssr': 3.5.12 - '@vue/shared': 3.5.12 - vue: 3.5.12(typescript@5.6.3) - '@vue/server-renderer@3.5.13(vue@3.5.13(typescript@5.6.3))': dependencies: '@vue/compiler-ssr': 3.5.13 '@vue/shared': 3.5.13 vue: 3.5.13(typescript@5.6.3) - '@vue/shared@3.5.12': {} - '@vue/shared@3.5.13': {} - '@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1)': + '@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1)': dependencies: - '@vitejs/plugin-vue': 5.1.4(vite@5.4.10(@types/node@22.10.2)(sass-embedded@1.80.5))(vue@3.5.12(typescript@5.6.3)) - '@vuepress/bundlerutils': 2.0.0-rc.17(typescript@5.6.3) - '@vuepress/client': 2.0.0-rc.17(typescript@5.6.3) - '@vuepress/core': 2.0.0-rc.17(typescript@5.6.3) - '@vuepress/shared': 2.0.0-rc.17 - '@vuepress/utils': 2.0.0-rc.17 - autoprefixer: 10.4.20(postcss@8.4.47) + '@vitejs/plugin-vue': 5.2.1(vite@6.0.11(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(yaml@2.6.1))(vue@3.5.13(typescript@5.6.3)) + '@vuepress/bundlerutils': 2.0.0-rc.19(typescript@5.6.3) + '@vuepress/client': 2.0.0-rc.19(typescript@5.6.3) + '@vuepress/core': 2.0.0-rc.19(typescript@5.6.3) + '@vuepress/shared': 2.0.0-rc.19 + '@vuepress/utils': 2.0.0-rc.19 + autoprefixer: 10.4.20(postcss@8.4.49) connect-history-api-fallback: 2.0.0 - postcss: 8.4.47 - postcss-load-config: 6.0.1(jiti@1.21.7)(postcss@8.4.47)(yaml@2.6.1) - rollup: 4.24.3 - vite: 5.4.10(@types/node@22.10.2)(sass-embedded@1.80.5) - vue: 3.5.12(typescript@5.6.3) - vue-router: 4.4.5(vue@3.5.12(typescript@5.6.3)) + postcss: 8.4.49 + postcss-load-config: 6.0.1(jiti@1.21.7)(postcss@8.4.49)(yaml@2.6.1) + rollup: 4.34.1 + vite: 6.0.11(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(yaml@2.6.1) + vue: 3.5.13(typescript@5.6.3) + vue-router: 4.5.0(vue@3.5.13(typescript@5.6.3)) transitivePeerDependencies: - '@types/node' - jiti @@ -5779,14 +5755,14 @@ snapshots: - typescript - yaml - '@vuepress/bundlerutils@2.0.0-rc.17(typescript@5.6.3)': + '@vuepress/bundlerutils@2.0.0-rc.19(typescript@5.6.3)': dependencies: - '@vuepress/client': 2.0.0-rc.17(typescript@5.6.3) - '@vuepress/core': 2.0.0-rc.17(typescript@5.6.3) - '@vuepress/shared': 2.0.0-rc.17 - '@vuepress/utils': 2.0.0-rc.17 - vue: 3.5.12(typescript@5.6.3) - vue-router: 4.4.5(vue@3.5.12(typescript@5.6.3)) + '@vuepress/client': 2.0.0-rc.19(typescript@5.6.3) + '@vuepress/core': 2.0.0-rc.19(typescript@5.6.3) + '@vuepress/shared': 2.0.0-rc.19 + '@vuepress/utils': 2.0.0-rc.19 + vue: 3.5.13(typescript@5.6.3) + vue-router: 4.5.0(vue@3.5.13(typescript@5.6.3)) transitivePeerDependencies: - supports-color - typescript @@ -5804,15 +5780,6 @@ snapshots: - supports-color - typescript - '@vuepress/client@2.0.0-rc.17(typescript@5.6.3)': - dependencies: - '@vue/devtools-api': 7.6.2 - '@vuepress/shared': 2.0.0-rc.17 - vue: 3.5.12(typescript@5.6.3) - vue-router: 4.4.5(vue@3.5.12(typescript@5.6.3)) - transitivePeerDependencies: - - typescript - '@vuepress/client@2.0.0-rc.19(typescript@5.6.3)': dependencies: '@vue/devtools-api': 7.6.8 @@ -5822,17 +5789,6 @@ snapshots: transitivePeerDependencies: - typescript - '@vuepress/core@2.0.0-rc.17(typescript@5.6.3)': - dependencies: - '@vuepress/client': 2.0.0-rc.17(typescript@5.6.3) - '@vuepress/markdown': 2.0.0-rc.17 - '@vuepress/shared': 2.0.0-rc.17 - '@vuepress/utils': 2.0.0-rc.17 - vue: 3.5.12(typescript@5.6.3) - transitivePeerDependencies: - - supports-color - - typescript - '@vuepress/core@2.0.0-rc.19(typescript@5.6.3)': dependencies: '@vuepress/client': 2.0.0-rc.19(typescript@5.6.3) @@ -5844,7 +5800,7 @@ snapshots: - supports-color - typescript - '@vuepress/helper@2.0.0-rc.52(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/helper@2.0.0-rc.52(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: '@vue/shared': 3.5.13 '@vueuse/core': 11.3.0(vue@3.5.13(typescript@5.6.3)) @@ -5852,12 +5808,12 @@ snapshots: fflate: 0.8.2 gray-matter: 4.0.3 vue: 3.5.13(typescript@5.6.3) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) transitivePeerDependencies: - '@vue/composition-api' - typescript - '@vuepress/helper@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/helper@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: '@vue/shared': 3.5.13 '@vueuse/core': 11.3.0(vue@3.5.13(typescript@5.6.3)) @@ -5865,38 +5821,17 @@ snapshots: fflate: 0.8.2 gray-matter: 4.0.3 vue: 3.5.13(typescript@5.6.3) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) transitivePeerDependencies: - '@vue/composition-api' - typescript - '@vuepress/highlighter-helper@2.0.0-rc.56(@vueuse/core@11.3.0(vue@3.5.13(typescript@5.6.3)))(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/highlighter-helper@2.0.0-rc.56(@vueuse/core@11.3.0(vue@3.5.13(typescript@5.6.3)))(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) optionalDependencies: '@vueuse/core': 11.3.0(vue@3.5.13(typescript@5.6.3)) - '@vuepress/markdown@2.0.0-rc.17': - dependencies: - '@mdit-vue/plugin-component': 2.1.3 - '@mdit-vue/plugin-frontmatter': 2.1.3 - '@mdit-vue/plugin-headers': 2.1.3 - '@mdit-vue/plugin-sfc': 2.1.3 - '@mdit-vue/plugin-title': 2.1.3 - '@mdit-vue/plugin-toc': 2.1.3 - '@mdit-vue/shared': 2.1.3 - '@mdit-vue/types': 2.1.0 - '@types/markdown-it': 14.1.2 - '@types/markdown-it-emoji': 3.0.1 - '@vuepress/shared': 2.0.0-rc.17 - '@vuepress/utils': 2.0.0-rc.17 - markdown-it: 14.1.0 - markdown-it-anchor: 9.2.0(@types/markdown-it@14.1.2)(markdown-it@14.1.0) - markdown-it-emoji: 3.0.0 - mdurl: 2.0.0 - transitivePeerDependencies: - - supports-color - '@vuepress/markdown@2.0.0-rc.19': dependencies: '@mdit-vue/plugin-component': 2.1.3 @@ -5918,123 +5853,123 @@ snapshots: transitivePeerDependencies: - supports-color - '@vuepress/plugin-active-header-links@2.0.0-rc.55(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/plugin-active-header-links@2.0.0-rc.55(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: '@vueuse/core': 11.3.0(vue@3.5.13(typescript@5.6.3)) vue: 3.5.13(typescript@5.6.3) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) transitivePeerDependencies: - '@vue/composition-api' - typescript - '@vuepress/plugin-back-to-top@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/plugin-back-to-top@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: - '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) '@vueuse/core': 11.3.0(vue@3.5.13(typescript@5.6.3)) vue: 3.5.13(typescript@5.6.3) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) transitivePeerDependencies: - '@vue/composition-api' - typescript - '@vuepress/plugin-blog@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/plugin-blog@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: - '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) chokidar: 3.6.0 vue: 3.5.13(typescript@5.6.3) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) transitivePeerDependencies: - '@vue/composition-api' - typescript - '@vuepress/plugin-catalog@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/plugin-catalog@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: - '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) vue: 3.5.13(typescript@5.6.3) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) transitivePeerDependencies: - '@vue/composition-api' - typescript - '@vuepress/plugin-comment@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/plugin-comment@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: - '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) giscus: 1.5.0 vue: 3.5.13(typescript@5.6.3) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) transitivePeerDependencies: - '@vue/composition-api' - typescript - '@vuepress/plugin-copy-code@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/plugin-copy-code@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: - '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) '@vueuse/core': 11.3.0(vue@3.5.13(typescript@5.6.3)) vue: 3.5.13(typescript@5.6.3) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) transitivePeerDependencies: - '@vue/composition-api' - typescript - '@vuepress/plugin-copyright@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/plugin-copyright@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: - '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) '@vueuse/core': 11.3.0(vue@3.5.13(typescript@5.6.3)) vue: 3.5.13(typescript@5.6.3) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) transitivePeerDependencies: - '@vue/composition-api' - typescript - '@vuepress/plugin-git@2.0.0-rc.54(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/plugin-git@2.0.0-rc.54(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: execa: 9.5.2 - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) - '@vuepress/plugin-links-check@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/plugin-links-check@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: - '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) transitivePeerDependencies: - '@vue/composition-api' - typescript - '@vuepress/plugin-markdown-hint@2.0.0-rc.56(markdown-it@14.1.0)(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/plugin-markdown-hint@2.0.0-rc.56(markdown-it@14.1.0)(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: '@mdit/plugin-alert': 0.13.1(markdown-it@14.1.0) '@mdit/plugin-container': 0.13.1(markdown-it@14.1.0) '@types/markdown-it': 14.1.2 - '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) '@vueuse/core': 11.3.0(vue@3.5.13(typescript@5.6.3)) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) transitivePeerDependencies: - '@vue/composition-api' - markdown-it - typescript - vue - '@vuepress/plugin-markdown-image@2.0.0-rc.56(markdown-it@14.1.0)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/plugin-markdown-image@2.0.0-rc.56(markdown-it@14.1.0)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: '@mdit/plugin-figure': 0.13.1(markdown-it@14.1.0) '@mdit/plugin-img-lazyload': 0.13.1(markdown-it@14.1.0) '@mdit/plugin-img-mark': 0.13.1(markdown-it@14.1.0) '@mdit/plugin-img-size': 0.13.1(markdown-it@14.1.0) '@types/markdown-it': 14.1.2 - '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) transitivePeerDependencies: - '@vue/composition-api' - markdown-it - typescript - '@vuepress/plugin-markdown-math@2.0.0-rc.56(katex@0.16.18)(markdown-it@14.1.0)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/plugin-markdown-math@2.0.0-rc.56(katex@0.16.18)(markdown-it@14.1.0)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: '@mdit/plugin-katex-slim': 0.13.1(katex@0.16.18)(markdown-it@14.1.0) '@mdit/plugin-mathjax-slim': 0.13.1(markdown-it@14.1.0) '@types/markdown-it': 14.1.2 - '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) vue: 3.5.13(typescript@5.6.3) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) optionalDependencies: katex: 0.16.18 transitivePeerDependencies: @@ -6042,172 +5977,152 @@ snapshots: - markdown-it - typescript - '@vuepress/plugin-markdown-tab@2.0.0-rc.56(markdown-it@14.1.0)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/plugin-markdown-tab@2.0.0-rc.56(markdown-it@14.1.0)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: '@mdit/plugin-tab': 0.13.2(markdown-it@14.1.0) '@types/markdown-it': 14.1.2 - '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) '@vueuse/core': 11.3.0(vue@3.5.13(typescript@5.6.3)) vue: 3.5.13(typescript@5.6.3) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) transitivePeerDependencies: - '@vue/composition-api' - markdown-it - typescript - '@vuepress/plugin-notice@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/plugin-notice@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: - '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) '@vueuse/core': 11.3.0(vue@3.5.13(typescript@5.6.3)) vue: 3.5.13(typescript@5.6.3) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) transitivePeerDependencies: - '@vue/composition-api' - typescript - '@vuepress/plugin-nprogress@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/plugin-nprogress@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: - '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) vue: 3.5.13(typescript@5.6.3) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) transitivePeerDependencies: - '@vue/composition-api' - typescript - '@vuepress/plugin-photo-swipe@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/plugin-photo-swipe@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: - '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) '@vueuse/core': 11.3.0(vue@3.5.13(typescript@5.6.3)) photoswipe: 5.4.4 vue: 3.5.13(typescript@5.6.3) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) transitivePeerDependencies: - '@vue/composition-api' - typescript - '@vuepress/plugin-reading-time@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/plugin-reading-time@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: - '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) vue: 3.5.13(typescript@5.6.3) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) transitivePeerDependencies: - '@vue/composition-api' - typescript - '@vuepress/plugin-redirect@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/plugin-redirect@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: - '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) '@vueuse/core': 11.3.0(vue@3.5.13(typescript@5.6.3)) cac: 6.7.14 vue: 3.5.13(typescript@5.6.3) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) transitivePeerDependencies: - '@vue/composition-api' - typescript - '@vuepress/plugin-rtl@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/plugin-rtl@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: - '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) vue: 3.5.13(typescript@5.6.3) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) transitivePeerDependencies: - '@vue/composition-api' - typescript - '@vuepress/plugin-sass-palette@2.0.0-rc.52(sass-embedded@1.80.5)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/plugin-sass-palette@2.0.0-rc.52(sass-embedded@1.80.5)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: - '@vuepress/helper': 2.0.0-rc.52(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/helper': 2.0.0-rc.52(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) chokidar: 4.0.3 - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) optionalDependencies: sass-embedded: 1.80.5 transitivePeerDependencies: - '@vue/composition-api' - typescript - '@vuepress/plugin-sass-palette@2.0.0-rc.56(sass-embedded@1.80.5)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/plugin-sass-palette@2.0.0-rc.56(sass-embedded@1.80.5)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: - '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) chokidar: 4.0.3 - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) optionalDependencies: sass-embedded: 1.80.5 transitivePeerDependencies: - '@vue/composition-api' - typescript - '@vuepress/plugin-seo@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/plugin-seo@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: - '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) transitivePeerDependencies: - '@vue/composition-api' - typescript - '@vuepress/plugin-shiki@2.0.0-rc.56(@vueuse/core@11.3.0(vue@3.5.13(typescript@5.6.3)))(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/plugin-shiki@2.0.0-rc.56(@vueuse/core@11.3.0(vue@3.5.13(typescript@5.6.3)))(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: '@shikijs/transformers': 1.24.3 - '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/highlighter-helper': 2.0.0-rc.56(@vueuse/core@11.3.0(vue@3.5.13(typescript@5.6.3)))(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/highlighter-helper': 2.0.0-rc.56(@vueuse/core@11.3.0(vue@3.5.13(typescript@5.6.3)))(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) nanoid: 5.0.9 shiki: 1.24.3 - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) transitivePeerDependencies: - '@vue/composition-api' - '@vueuse/core' - typescript - '@vuepress/plugin-sitemap@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/plugin-sitemap@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: - '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) sitemap: 8.0.0 - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) transitivePeerDependencies: - '@vue/composition-api' - typescript - '@vuepress/plugin-theme-data@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/plugin-theme-data@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: '@vue/devtools-api': 7.6.8 vue: 3.5.13(typescript@5.6.3) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) transitivePeerDependencies: - typescript - '@vuepress/plugin-watermark@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': + '@vuepress/plugin-watermark@2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)))': dependencies: - '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) vue: 3.5.13(typescript@5.6.3) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) watermark-js-plus: 1.5.7 transitivePeerDependencies: - '@vue/composition-api' - typescript - '@vuepress/shared@2.0.0-rc.17': - dependencies: - '@mdit-vue/types': 2.1.0 - '@vuepress/shared@2.0.0-rc.19': dependencies: '@mdit-vue/types': 2.1.0 - '@vuepress/utils@2.0.0-rc.17': - dependencies: - '@types/debug': 4.1.12 - '@types/fs-extra': 11.0.4 - '@types/hash-sum': 1.0.2 - '@vuepress/shared': 2.0.0-rc.17 - debug: 4.3.7 - fs-extra: 11.2.0 - globby: 14.0.2 - hash-sum: 2.0.0 - ora: 8.1.0 - picocolors: 1.1.1 - upath: 2.0.1 - transitivePeerDependencies: - - supports-color - '@vuepress/utils@2.0.0-rc.19': dependencies: '@types/debug': 4.1.12 @@ -6301,14 +6216,14 @@ snapshots: stubborn-fs: 1.2.5 when-exit: 2.1.3 - autoprefixer@10.4.20(postcss@8.4.47): + autoprefixer@10.4.20(postcss@8.4.49): dependencies: browserslist: 4.24.2 caniuse-lite: 1.0.30001676 fraction.js: 4.3.7 normalize-range: 0.1.2 picocolors: 1.1.1 - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 balanced-match@1.0.2: {} @@ -7010,6 +6925,34 @@ snapshots: '@esbuild/win32-ia32': 0.21.5 '@esbuild/win32-x64': 0.21.5 + esbuild@0.24.2: + optionalDependencies: + '@esbuild/aix-ppc64': 0.24.2 + '@esbuild/android-arm': 0.24.2 + '@esbuild/android-arm64': 0.24.2 + '@esbuild/android-x64': 0.24.2 + '@esbuild/darwin-arm64': 0.24.2 + '@esbuild/darwin-x64': 0.24.2 + '@esbuild/freebsd-arm64': 0.24.2 + '@esbuild/freebsd-x64': 0.24.2 + '@esbuild/linux-arm': 0.24.2 + '@esbuild/linux-arm64': 0.24.2 + '@esbuild/linux-ia32': 0.24.2 + '@esbuild/linux-loong64': 0.24.2 + '@esbuild/linux-mips64el': 0.24.2 + '@esbuild/linux-ppc64': 0.24.2 + '@esbuild/linux-riscv64': 0.24.2 + '@esbuild/linux-s390x': 0.24.2 + '@esbuild/linux-x64': 0.24.2 + '@esbuild/netbsd-arm64': 0.24.2 + '@esbuild/netbsd-x64': 0.24.2 + '@esbuild/openbsd-arm64': 0.24.2 + '@esbuild/openbsd-x64': 0.24.2 + '@esbuild/sunos-x64': 0.24.2 + '@esbuild/win32-arm64': 0.24.2 + '@esbuild/win32-ia32': 0.24.2 + '@esbuild/win32-x64': 0.24.2 + escalade@3.2.0: {} escape-goat@4.0.0: {} @@ -8403,18 +8346,6 @@ snapshots: type-check: 0.4.0 word-wrap: 1.2.5 - ora@8.1.0: - dependencies: - chalk: 5.3.0 - cli-cursor: 5.0.0 - cli-spinners: 2.9.2 - is-interactive: 2.0.0 - is-unicode-supported: 2.1.0 - log-symbols: 6.0.0 - stdin-discarder: 0.2.2 - string-width: 7.2.0 - strip-ansi: 7.1.0 - ora@8.1.1: dependencies: chalk: 5.3.0 @@ -8550,12 +8481,12 @@ snapshots: pngjs@5.0.0: {} - postcss-load-config@6.0.1(jiti@1.21.7)(postcss@8.4.47)(yaml@2.6.1): + postcss-load-config@6.0.1(jiti@1.21.7)(postcss@8.4.49)(yaml@2.6.1): dependencies: lilconfig: 3.1.2 optionalDependencies: jiti: 1.21.7 - postcss: 8.4.47 + postcss: 8.4.49 yaml: 2.6.1 postcss-selector-parser@6.1.2: @@ -8565,12 +8496,6 @@ snapshots: postcss-value-parser@4.2.0: {} - postcss@8.4.47: - dependencies: - nanoid: 3.3.7 - picocolors: 1.1.1 - source-map-js: 1.2.1 - postcss@8.4.49: dependencies: nanoid: 3.3.7 @@ -8730,28 +8655,15 @@ snapshots: robust-predicates@3.0.2: {} - rollup@4.24.3: + rollup@4.34.1: dependencies: '@types/estree': 1.0.6 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.24.3 - '@rollup/rollup-android-arm64': 4.24.3 - '@rollup/rollup-darwin-arm64': 4.24.3 - '@rollup/rollup-darwin-x64': 4.24.3 - '@rollup/rollup-freebsd-arm64': 4.24.3 - '@rollup/rollup-freebsd-x64': 4.24.3 - '@rollup/rollup-linux-arm-gnueabihf': 4.24.3 - '@rollup/rollup-linux-arm-musleabihf': 4.24.3 - '@rollup/rollup-linux-arm64-gnu': 4.24.3 - '@rollup/rollup-linux-arm64-musl': 4.24.3 - '@rollup/rollup-linux-powerpc64le-gnu': 4.24.3 - '@rollup/rollup-linux-riscv64-gnu': 4.24.3 - '@rollup/rollup-linux-s390x-gnu': 4.24.3 - '@rollup/rollup-linux-x64-gnu': 4.24.3 - '@rollup/rollup-linux-x64-musl': 4.24.3 - '@rollup/rollup-win32-arm64-msvc': 4.24.3 - '@rollup/rollup-win32-ia32-msvc': 4.24.3 - '@rollup/rollup-win32-x64-msvc': 4.24.3 + '@rollup/rollup-darwin-arm64': 4.34.1 + '@rollup/rollup-darwin-x64': 4.34.1 + '@rollup/rollup-linux-x64-gnu': 4.34.1 + '@rollup/rollup-linux-x64-musl': 4.34.1 + '@rollup/rollup-win32-x64-msvc': 4.34.1 fsevents: 2.3.3 run-applescript@5.0.0: @@ -9040,10 +8952,6 @@ snapshots: stylis@4.3.4: {} - superjson@2.2.1: - dependencies: - copy-anything: 3.0.5 - superjson@2.2.2: dependencies: copy-anything: 3.0.5 @@ -9159,8 +9067,6 @@ snapshots: ufo@1.5.4: {} - undici-types@6.19.8: {} - undici-types@6.20.0: {} undici@6.21.0: {} @@ -9269,15 +9175,17 @@ snapshots: media-captions: 1.0.4 unplugin: 1.16.0 - vite@5.4.10(@types/node@22.10.2)(sass-embedded@1.80.5): + vite@6.0.11(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(yaml@2.6.1): dependencies: - esbuild: 0.21.5 - postcss: 8.4.47 - rollup: 4.24.3 + esbuild: 0.24.2 + postcss: 8.4.49 + rollup: 4.34.1 optionalDependencies: '@types/node': 22.10.2 fsevents: 2.3.3 + jiti: 1.21.7 sass-embedded: 1.80.5 + yaml: 2.6.1 vue-demi@0.14.10(vue@3.5.13(typescript@5.6.3)): dependencies: @@ -9296,26 +9204,11 @@ snapshots: transitivePeerDependencies: - supports-color - vue-router@4.4.5(vue@3.5.12(typescript@5.6.3)): - dependencies: - '@vue/devtools-api': 6.6.4 - vue: 3.5.12(typescript@5.6.3) - vue-router@4.5.0(vue@3.5.13(typescript@5.6.3)): dependencies: '@vue/devtools-api': 6.6.4 vue: 3.5.13(typescript@5.6.3) - vue@3.5.12(typescript@5.6.3): - dependencies: - '@vue/compiler-dom': 3.5.12 - '@vue/compiler-sfc': 3.5.12 - '@vue/runtime-dom': 3.5.12 - '@vue/server-renderer': 3.5.12(vue@3.5.12(typescript@5.6.3)) - '@vue/shared': 3.5.12 - optionalDependencies: - typescript: 5.6.3 - vue@3.5.13(typescript@5.6.3): dependencies: '@vue/compiler-dom': 3.5.13 @@ -9326,18 +9219,18 @@ snapshots: optionalDependencies: typescript: 5.6.3 - vuepress-plugin-components@2.0.0-rc.59(dashjs@4.7.4)(hls.js@1.5.17)(sass-embedded@1.80.5)(typescript@5.6.3)(vidstack@1.12.12)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))): + vuepress-plugin-components@2.0.0-rc.59(dashjs@4.7.4)(hls.js@1.5.17)(sass-embedded@1.80.5)(typescript@5.6.3)(vidstack@1.12.12)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))): dependencies: '@stackblitz/sdk': 1.11.0 - '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-sass-palette': 2.0.0-rc.56(sass-embedded@1.80.5)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-sass-palette': 2.0.0-rc.56(sass-embedded@1.80.5)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) '@vueuse/core': 11.3.0(vue@3.5.13(typescript@5.6.3)) balloon-css: 1.2.0 create-codepen: 2.0.0 qrcode: 1.5.4 vue: 3.5.13(typescript@5.6.3) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) - vuepress-shared: 2.0.0-rc.59(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress-shared: 2.0.0-rc.59(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) optionalDependencies: dashjs: 4.7.4 hls.js: 1.5.17 @@ -9347,7 +9240,7 @@ snapshots: - '@vue/composition-api' - typescript - vuepress-plugin-md-enhance@2.0.0-rc.59(@vue/repl@4.4.2)(markdown-it@14.1.0)(mermaid@10.9.3)(sass-embedded@1.80.5)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))): + vuepress-plugin-md-enhance@2.0.0-rc.59(@vue/repl@4.4.2)(markdown-it@14.1.0)(mermaid@10.9.3)(sass-embedded@1.80.5)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))): dependencies: '@mdit/plugin-alert': 0.13.1(markdown-it@14.1.0) '@mdit/plugin-align': 0.13.1(markdown-it@14.1.0) @@ -9365,14 +9258,14 @@ snapshots: '@mdit/plugin-tasklist': 0.13.1(markdown-it@14.1.0) '@mdit/plugin-uml': 0.13.1(markdown-it@14.1.0) '@types/markdown-it': 14.1.2 - '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-sass-palette': 2.0.0-rc.56(sass-embedded@1.80.5)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-sass-palette': 2.0.0-rc.56(sass-embedded@1.80.5)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) '@vueuse/core': 11.3.0(vue@3.5.13(typescript@5.6.3)) balloon-css: 1.2.0 js-yaml: 4.1.0 vue: 3.5.13(typescript@5.6.3) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) - vuepress-shared: 2.0.0-rc.59(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress-shared: 2.0.0-rc.59(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) optionalDependencies: '@vue/repl': 4.4.2 mermaid: 10.9.3 @@ -9382,85 +9275,85 @@ snapshots: - markdown-it - typescript - vuepress-plugin-search-pro@2.0.0-rc.57(sass-embedded@1.80.5)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))): + vuepress-plugin-search-pro@2.0.0-rc.57(sass-embedded@1.80.5)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))): dependencies: - '@vuepress/helper': 2.0.0-rc.52(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-sass-palette': 2.0.0-rc.52(sass-embedded@1.80.5)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/helper': 2.0.0-rc.52(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-sass-palette': 2.0.0-rc.52(sass-embedded@1.80.5)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) '@vueuse/core': 11.3.0(vue@3.5.13(typescript@5.6.3)) cheerio: 1.0.0 chokidar: 3.6.0 slimsearch: 2.2.2 vue: 3.5.13(typescript@5.6.3) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) - vuepress-shared: 2.0.0-rc.57(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress-shared: 2.0.0-rc.57(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) optionalDependencies: sass-embedded: 1.80.5 transitivePeerDependencies: - '@vue/composition-api' - typescript - vuepress-shared@2.0.0-rc.57(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))): + vuepress-shared@2.0.0-rc.57(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))): dependencies: - '@vuepress/helper': 2.0.0-rc.52(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/helper': 2.0.0-rc.52(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) '@vueuse/core': 11.3.0(vue@3.5.13(typescript@5.6.3)) dayjs: 1.11.13 vue: 3.5.13(typescript@5.6.3) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) transitivePeerDependencies: - '@vue/composition-api' - typescript - vuepress-shared@2.0.0-rc.59(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))): + vuepress-shared@2.0.0-rc.59(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))): dependencies: - '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) '@vueuse/core': 11.3.0(vue@3.5.13(typescript@5.6.3)) dayjs: 1.11.13 vue: 3.5.13(typescript@5.6.3) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) transitivePeerDependencies: - '@vue/composition-api' - typescript - vuepress-theme-hope@2.0.0-rc.59(@vue/repl@4.4.2)(dashjs@4.7.4)(hls.js@1.5.17)(katex@0.16.18)(markdown-it@14.1.0)(mermaid@10.9.3)(sass-embedded@1.80.5)(typescript@5.6.3)(vidstack@1.12.12)(vuepress-plugin-search-pro@2.0.0-rc.57(sass-embedded@1.80.5)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))))(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))): + vuepress-theme-hope@2.0.0-rc.59(@vue/repl@4.4.2)(dashjs@4.7.4)(hls.js@1.5.17)(katex@0.16.18)(markdown-it@14.1.0)(mermaid@10.9.3)(sass-embedded@1.80.5)(typescript@5.6.3)(vidstack@1.12.12)(vuepress-plugin-search-pro@2.0.0-rc.57(sass-embedded@1.80.5)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))))(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))): dependencies: - '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-active-header-links': 2.0.0-rc.55(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-back-to-top': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-blog': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-catalog': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-comment': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-copy-code': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-copyright': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-git': 2.0.0-rc.54(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-links-check': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-markdown-hint': 2.0.0-rc.56(markdown-it@14.1.0)(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-markdown-image': 2.0.0-rc.56(markdown-it@14.1.0)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-markdown-math': 2.0.0-rc.56(katex@0.16.18)(markdown-it@14.1.0)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-markdown-tab': 2.0.0-rc.56(markdown-it@14.1.0)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-notice': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-nprogress': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-photo-swipe': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-reading-time': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-redirect': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-rtl': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-sass-palette': 2.0.0-rc.56(sass-embedded@1.80.5)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-seo': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-shiki': 2.0.0-rc.56(@vueuse/core@11.3.0(vue@3.5.13(typescript@5.6.3)))(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-sitemap': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-theme-data': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - '@vuepress/plugin-watermark': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/helper': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-active-header-links': 2.0.0-rc.55(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-back-to-top': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-blog': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-catalog': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-comment': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-copy-code': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-copyright': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-git': 2.0.0-rc.54(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-links-check': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-markdown-hint': 2.0.0-rc.56(markdown-it@14.1.0)(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-markdown-image': 2.0.0-rc.56(markdown-it@14.1.0)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-markdown-math': 2.0.0-rc.56(katex@0.16.18)(markdown-it@14.1.0)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-markdown-tab': 2.0.0-rc.56(markdown-it@14.1.0)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-notice': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-nprogress': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-photo-swipe': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-reading-time': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-redirect': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-rtl': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-sass-palette': 2.0.0-rc.56(sass-embedded@1.80.5)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-seo': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-shiki': 2.0.0-rc.56(@vueuse/core@11.3.0(vue@3.5.13(typescript@5.6.3)))(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-sitemap': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-theme-data': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + '@vuepress/plugin-watermark': 2.0.0-rc.56(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) '@vueuse/core': 11.3.0(vue@3.5.13(typescript@5.6.3)) balloon-css: 1.2.0 bcrypt-ts: 5.0.3 chokidar: 3.6.0 vue: 3.5.13(typescript@5.6.3) - vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) - vuepress-plugin-components: 2.0.0-rc.59(dashjs@4.7.4)(hls.js@1.5.17)(sass-embedded@1.80.5)(typescript@5.6.3)(vidstack@1.12.12)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - vuepress-plugin-md-enhance: 2.0.0-rc.59(@vue/repl@4.4.2)(markdown-it@14.1.0)(mermaid@10.9.3)(sass-embedded@1.80.5)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) - vuepress-shared: 2.0.0-rc.59(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + vuepress: 2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)) + vuepress-plugin-components: 2.0.0-rc.59(dashjs@4.7.4)(hls.js@1.5.17)(sass-embedded@1.80.5)(typescript@5.6.3)(vidstack@1.12.12)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + vuepress-plugin-md-enhance: 2.0.0-rc.59(@vue/repl@4.4.2)(markdown-it@14.1.0)(mermaid@10.9.3)(sass-embedded@1.80.5)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + vuepress-shared: 2.0.0-rc.59(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) optionalDependencies: sass-embedded: 1.80.5 - vuepress-plugin-search-pro: 2.0.0-rc.57(sass-embedded@1.80.5)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) + vuepress-plugin-search-pro: 2.0.0-rc.57(sass-embedded@1.80.5)(typescript@5.6.3)(vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3))) transitivePeerDependencies: - '@vue/composition-api' - '@vue/repl' @@ -9486,7 +9379,7 @@ snapshots: - typescript - vidstack - vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)): + vuepress@2.0.0-rc.19(@vuepress/bundler-vite@2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1))(typescript@5.6.3)(vue@3.5.13(typescript@5.6.3)): dependencies: '@vuepress/cli': 2.0.0-rc.19(typescript@5.6.3) '@vuepress/client': 2.0.0-rc.19(typescript@5.6.3) @@ -9496,7 +9389,7 @@ snapshots: '@vuepress/utils': 2.0.0-rc.19 vue: 3.5.13(typescript@5.6.3) optionalDependencies: - '@vuepress/bundler-vite': 2.0.0-rc.17(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1) + '@vuepress/bundler-vite': 2.0.0-rc.19(@types/node@22.10.2)(jiti@1.21.7)(sass-embedded@1.80.5)(typescript@5.6.3)(yaml@2.6.1) transitivePeerDependencies: - supports-color - typescript