为什么广度优先遍历得到的是最短路径
为什么广度优先遍历得到的是最短路径
假设我们需要找到从A到G的最短路径:
在BFS中使用队列这种数据结构,那么我们来模拟一遍找到最短路径的这样的过程
1、A入队,队列状态:A 到A的距离为0
2、队列不为空,A出队,找到A相邻的节点 BCD然后加入到队列中,队列状态:B C D ,它们到A的距离为父节点A的距离加一,所以距离为1。
3、队列不为空,B出队(因为是先进先出,这里不管是B、C还是D ...
第6章 集合引用类型
第六章 集合引用类型
Object
显示地创建Object的实例由两种方式
// 使用new 操作符和Object构造函数
let person = new Object();
person.name = "Nicholas";
person.age = 29;
// 使用对象字面量表示法
// 在对象字面量表示法中,属性名可以是字符串或者数值
let person = {
...
第5章 基本引用类型
第五章 基本引用类型
Date
let now = new Date(); // Fri Apr 14 2023 13:51:39 GMT+0800 (中国标准时间)
let someDate = new Date(Date.parse('May 23, 2019')); // Thu May 23 2019 00:00:00 GMT+0800 (中国标准时间)
let someDate2 = n ...
第4章 变量、作用域与内存
第4章 变量、作用域与内存
基本类型与引用类型
存储位置不同:基本类型(存储在栈中的实际值)引用类型(保存在内存中的对象)
复制值:
把一个原始值赋值给另一个变量时,原始值会被复制到新变量的位置。
let num1 = 5;
let num2 = num1;
把引用值从一个变量赋给另一个变量时,存储在变量中的值也会被复制到新变量所在的位置(但是这里复制的值是一个指针,它指向存储在堆内存 ...



