- 博客(19)
- 收藏
- 关注
原创 三、Ajax加强
url地址中,只允许出现英文相关的字母,标点符号,数字 不允许出现中文字符,需要对中文进行编码(转义)URL编码的原则:使用安全的字符(没有特殊用途或者特殊意义的可打印的字符)去表示哪些不安全的字符使用英文字符去表示非英文字符全称EXtensible Markup Language(可扩展标记语言)JSON就是js对象和数组的字符串表示法(json的本质就是字符串)又称作 js对象表示法作用:json是一种轻量级的文本数据交换格式 json比XML更小 更快 更易解析method 请求的类型。
2023-06-18 11:50:25
93
原创 HTTP 协议
HTTP 协议的全称是(HyperText Transfer Protocol),翻译过来就是超文本传输协议。超文本是超级文本的缩写,是指超越文本限制或者超链接,比如:图片、音乐、视频、超链接等等都属于超文本。HTTP 协议的制作者是蒂姆·伯纳斯-李,1991年设计出来的,HTTP 协议设计之前目的是传输网页数据的,现在允许传输任意类型的数据。传输 HTTP 协议格式的数据是基于 TCP 传输协议的,发送数据之前需要先建立连接。
2023-06-04 20:45:04
43
原创 图解红黑树
此时既满足规则4也满足规则5。尽管新节点是红色的,但是新节点N有两个黑色节点NIL,所以通向它的路径上黑色节点的个数依然相等,因此满足规则5。旋转二叉搜索树,使得父节点原来的位置被自己的右子节点替代,左子节点的位置被父节点替代;旋转二叉搜索树,使得父节点原来的位置被自己的左子节点替代,右子节点的位置被父节点替代;在二叉树中依次插入节点:10,9,8,7,6,5,4,3,2,1。节点P是红色节点,节点U是黑色节点,并且节点N为节点P的。节点P是红色节点,节点U是黑色节点,并且节点N为节点P的。
2023-06-03 20:20:41
43
原创 JavaScript实现树结构(一)
1.1.简单了解树结构什么是树?树一般都有一个根,连接着根的是树干;树干会发生分叉,形成许多树枝,树枝会继续分化成更小的树枝;树枝的最后是叶子;现实生活中很多结构都是树的抽象,模拟的树结构相当于旋转180°的树。树结构对比于数组/链表/哈希表有哪些优势呢:优点:可以通过下标值访问,效率高;缺点:查找数据时需要先对数据进行排序,生成有序数组,才能提高查找效率;并且在插入和删除元素时,需要大量的位移操作;优点:数据的插入和删除操作效率都很高;查找。
2023-05-24 13:46:31
306
原创 JavaScript实现哈希表
1.1.认识哈希表哈希表通常是基于数组哈希表可以提供非常快速的插入-删除-查找操作;无论多少数据,插入和删除值都只需要非常短的时间,即O(1)的时间级。实际上,只需要几个机器指令即可完成;哈希表的速度比树还要快,基本可以瞬间查找到想要的元素。但是相对于树来说编码要简单得多。哈希表同样存在不足之处哈希表中的数据是没有顺序的,所以不能以一种固定的方式(比如从小到大 )来遍历其中的元素。通常情况下,哈希表中的key是不允许重复的,不能放置相同的key,用于保存不同的元素。哈希表是什么?
2023-05-21 10:07:51
353
原创 JavaScript实现集合与字典
实现思路:遍历集合A,当取得的元素中有一个不存在于集合B时,就说明集合A不是集合B的子集,返回false。实现思路:遍历集合A,当取得的元素也存在于集合B时,就把该元素添加到另一个集合C中。实现思路:遍历集合A,当取得的元素不存在于集合B时,就把该元素添加到另一个集合C中。类就是一个集合类,这里我们重新封装一个Set类,了解集合的底层实现。实现思路:创建集合C代表集合A和集合B的并集,先将集合。就是一个集合,可以使用它来封装集合类Set。:返回集合所包含元素的数量,与数组的。:移除集合中的所有项;
2023-04-14 19:54:00
985
原创 JavaScript实现双向链表
双向链表:既可以从头遍历到尾,又可以从尾遍历到头。也就是说链表连接的过程是双向的,它的实现原理是:一个节点既有向前连接的引用,也有一个向后连接的引用。每次在插入或删除某个节点时,都需要处理四个引用,而不是两个,实现起来会困难些;相对于单向链表,所占内存空间更大一些;但是,相对于双向链表的便利性而言,这些缺点微不足道。双向链表不仅有head指针指向第一个节点,而且有tail指针指向最后一个节点;item储存数据、prev指向前一个节点、next指向后一个节点;
2023-04-13 19:45:01
342
原创 JavaScript实现单向链表
链表和数组一样,可以用于存储一系列的元素,但是链表和数组的实现机制完全不同。链表的每个元素由一个存储元素本身的节点和一个指向下一个元素的引用(有的语言称为指针或连接)组成。类似于火车头,一节车厢载着乘客(数据),通过节点连接另一节车厢。head属性指向链表的第一个节点;链表中的最后一个节点指向null;当链表中一个节点也没有的时候,head直接指向null;数组的创建通常需要申请一段连续的内存空间(一整块内存),并且大小是固定的。所以当原数组不能满足容量需求时,需要扩容。
2023-04-12 20:00:55
261
原创 JavaScript实现栈结构(Stack)
1.1.什么是数据结构?数据结构就是在计算机中,存储和组织数据的方式。例如:图书管理,怎样摆放图书才能既能放很多书,也方便取?主要需要考虑两个问题:操作一:新书怎么插入?操作二:怎么找到某本指定的书?(Aarray)(Stack)(Graph)(Hash)(Queue)(Tree)(Heap):数据结构与算法与语言无关,常见的编程语言都有的使用上述常见的数据结构。1.2.什么是算法?算法(Algorithm)的定义一个有限指令集,每条指令的描述不依赖于语言;
2023-04-10 19:59:56
185
原创 JavaScript实现队列结构(Queue)
队列是是一种受限的线性表,特点为先进先出FIFO受限之处在于它只允许在表的前端(front)进行删除操作;在表的后端(rear)进行插入操作;相当于排队买票,先来的先买票,后来的后买票。打印队列:计算机打印多个文件的时候,需要排队打印;线程队列:当开启多线程时,当新开启的线程所需的资源不足时就先放入线程队列,等待CPU处理;队列的实现和栈一样,有两种方案:基于数组实现;基于链表实现;enqueue(element):向队列尾部添加一个(或多个)新的项;
2023-04-10 19:53:52
792
原创 四、JavaScript 的数据类型
当声明一个变量而没有赋值时,它的值就是 Undefined- Undefined 类型的值只有一个就是 Undefined- 使用 typeof 检查一个 Undefined 类型的值时,会返回 "undefined"
2023-03-31 19:46:34
52
原创 三、JavaScript 变量
(2)、标识符不能是 js 中的关键字和保留字,也不建议使用内置的函数或类名作为变量名。在 js 中除了常规的常量外,有一些对象类型的数据我们也会声明为常量。在 js 中,使用 const 声明常量,常量只能赋值一次,重复赋值会报错。在 js 中所有的字面量都可以直接使用,但是直接使用字面量并不方便。声明和赋值同时进行 --> var 变量 = 值。在 js 中,所有可以由我们自主命名的内容,都可以认为是一个标识符。字面量其实就是一个值,它代表的含义就是它字面的意思。并且变量中存储的字面量可以随意的修改。
2023-03-31 10:40:06
32
原创 一、JavaScript 简介
当时的浏览器只能只能运行包含了HTML和CSS的静态网页,网页就相当于是报纸或杂志的电子版,没有任何的动态交互行为。所谓的面向对象,指将一组相关的功能(数据)统一封装到一个对象中,使用功能时无需考虑其实现的细节,直接找到对应的对象即可完成功能的调用。在一个单独的 js 文件中也可以编写 JavaScript 代码,然后在 HTML 文件中使用 script 标签进行引用,请参考以下代码。网景公司一时风光无两。注释中的内容不会被解析器解析执行,但是会在源码中显示,我们一般会使用注释对程序中的内容进行解释。
2023-03-30 16:05:31
50
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人