二叉查找树(Binary Search Tree) 支持动态数据集合的快速插入删除查找 要求?节点值:左<父<右 【二叉排序树】中序遍历二叉查找...
树:非线性表结构orz 概念直觉理解(节点、父子关系、兄弟节点、根节点、叶节点)高度(类比楼房,叶节点为0,下往上递增)vs深度(类比水面,根节...
应用五:负载均衡 会话粘滞(session sticky)的负载均衡算法要求?在同一个客户端上,在一次会话中的所有请求都路由到同一个服务器上 维...
哈希算法=映射规则,将任意长度的二进制值串映射为固定长度的二进制值串(哈希值) 要求? 单向:从哈希值不能反推出原始数据 对输入数据敏感 散列冲...
优秀的散列函数 设计不能太复杂避免消耗计算时间 生成的值尽可能随机且均匀分布 装载因子过大?——动态扩容(阈值设置权衡时间空间复杂度) 避免低效...
数组的一种拓展,利用数组支持按照下标随机访问数据的特性。通过散列函数把元素键值映射为下标,将数据存储在数组中对应下标的位置。 key --has...
动态数据结构:支持快速插入删除查找操作(改造后的链表以支持类似二分的查找算法) 理解?(跳表=链表加多级索引的结构)对链表建立索引,提高查找效率...
针对有序的数据集合。每次都通过与区间的中间元素对比,将待查找区间缩小为原来一半,直到找到所需元素或区间缩小为0 时间复杂度O(logn) 易错点...
快速排序 理想的分区点——被分区点分开的两个分区中数据的数量差不多 分区算法 三数取中法(每间隔某个固定的长度,取数据出来比较,将中间值作为分区...