一切福田,不離方寸,從心而覓,感無不通。

双向链表

双向链表也叫双链表,是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱。所以,从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点和后继结点。一般我们都构造双向循环链表。

龙生   24 Mar 2022
View Details

红黑树

红黑树(Red Black Tree) 是一种自平衡二叉查找树,是在计算机科学中用到的一种数据结构,典型的用途是实现关联数组。
红黑树是在1972年由Rudolf Bayer发明的,当时被称为平衡二叉B树(symmetric binary B-trees)。后来,在1978年被 Leo J. Guibas 和 Robert Sedgewick 修改为如今的“红黑树”。
红黑树是一种特化的AVL树(平衡二叉树),都是在进行插入和删除操作时通过特定操作保持二叉查找树的平衡,从而获得较高的查找性能。
它虽然是复杂的,但它的最坏情况运行时间也是非常良好的,并且在实践中是高效的: 它可以在O(log n)时间内做查找,插入和删除,这里的n 是树中元素的数目。

龙生   24 Mar 2022
View Details

Props中的default

1. 默认使用

  2. 为什么需要通过函数的形式 因为对象和数组都是属于我们的复杂类型,在进行访问指向的时候我们使用的是对象和数组的地址,而不像基础数据类型那。 如果我们没有通过函数的形式去设置对象和数据类型的默认值,而是直接采用{}和[],如果多个使用该组件的地方因为没有传递props而使用了默认值,假设其中一个地方我们修改了默认的值(不推荐,会报警告,不符合反向数据流),那么其他的地方由于指向的是同一个内存中的引用地址,其他地方的显示值也会发生修改 我们使用了函数的形式去返回,保证每次函数执行出来的都是返回一个新的对象,这样就不会出现上面所有的情况   from:https://blog.csdn.net/YoungtiNine/article/details/121367452

龙生   23 Mar 2022
View Details

10款最著名的代码(文本)编辑器

1. NOTEPAD++
2. VIM
3. GNU Emacs
4. SUBLIME TEXT
5. ATOM\
6. PSPAD
7. GEANY
8. ECLIPSE
9. JEDIT
10、NETBEANS

龙生   20 Mar 2022
View Details

This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its de 错误解决办法

这是我们开启了bin-log, 我们就必须指定我们的函数是否是

其中在function里面,只有 DETERMINISTIC, NO SQL 和 READS SQL DATA 被支持。如果我们开启了 bin-log, 我们就必须为我们的function指定一个参数。 在MySQL中创建函数时出现这种错误的解决方法:

  from:https://blog.csdn.net/zhangtxsir/article/details/105221057

龙生   18 Mar 2022
View Details

fastjson:字符串转数组、json对象转Map集合

 

龙生   17 Mar 2022
View Details

注解Annotation实现原理与自定义注解例子

什么是注解?
对于很多初次接触的开发者来说应该都有这个疑问?Annotation是Java5开始引入的新特征,中文名称叫注解。它提供了一种安全的类似注释的机制,用来将任何的信息或元数据(metadata)与程序元素(类、方法、成员变量等)进行关联。为程序的元素(类、方法、成员变量)加上更直观更明了的说明,这些说明信息是与程序的业务逻辑无关,并且供指定的工具或框架使用。Annotation像一种修饰符一样,应用于包、类型、构造方法、方法、成员变量、参数及本地变量的声明语句中。
Java注解是附加在代码中的一些元信息,用于一些工具在编译、运行时进行解析和使用,起到说明、配置的功能。注解不会也不能影响代码的实际逻辑,仅仅起到辅助性的作用。包含在 java.lang.annotation 包中。

龙生   16 Mar 2022
View Details

Java提高篇——Java 异常处理

异常的概念
异常的体系结构
Java 异常的处理机制
异常处理的基本语法
异常链
自定义异常

龙生   16 Mar 2022
View Details

js forEach循环调用异步方法,如何实现同步

准备代码:

const res = []
const arr = [1, 2, 3, 4, 5]

function t(num) {
return new Promise((resolve, reject) => {
setTimeout(() => {
console.log('定时器', num)
resolve()
}, 1000)

})
}

function t2(item) {
console.log('进入res')
res.push(item)
}

龙生   15 Mar 2022
View Details