面试经验总结2

1、如何随机删除二叉树节点

如果 key > root.val,说明要删除的节点在右子树,root.right = deleteNode(root.right, key)。

如果 key < root.val,说明要删除的节点在左子树,root.left = deleteNode(root.left, key)。
如果 key == root.val,则该节点就是我们要删除的节点,则:

  • 如果该节点是叶子节点,则直接删除它:root = null。
  • 左子树为空,返回root.right
  • 右子树为空,返回root.left
  • 左右子树都不为空 可以找到右子树的最左节点

返回 root。

2、linux常用命令
(1)、查看进程用的是哪个命令
ps
ps命令用于显示当前进程 (process) 的状态。

(2)、删掉进程用的是那个命令
kill
kill命令用于删除执行中的程序或工作。

(3)、查看端口号用的是哪个
netstat
netstat 命令用于显示网络状态。

(4)、查看日志,查找文件
grep 命令用于查找文件里符合条件的字符串。
ls则只能在当前目录查找

(5)、判断网络工作
ping命令用于检测主机。
检测是否与主机连通# ping www.w3cschool.cc //ping主机,//需要手动终止Ctrl+C

3、第一范式
1NF的定义为:符合1NF的关系中的每个属性都不可再分。
第一范式的条件:元组中的每一个分量都必须是不可分割的数据项。

错误示范
在这里插入图片描述

正确示范
在这里插入图片描述

第二范式的条件:在第一范式的基础上,所有的非主属性完全依赖于主键。完全依赖意味着不能依赖于主键的一部分属性。(在1NF基础上消除非主属性对主码的部分函数依赖)

在这里插入图片描述
在这里插入图片描述

第三范式的条件:满足第二范式的基础上,非主属性都不传递依赖于主键

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/ingenuou_/article/details/107545022