算法笔记:
第一章 算法概述
1、时间复杂度(按照从低到高的顺序O(1)、O(logn)、O(n)、O(nlogn)、O(n2))
如何推导出时间复杂度:
(1)如果运行时间是常数量级,则用常数1表示
(2)只保留时间函数中的最高阶项
(3)如果最高阶项存在,则省去最高阶项前面的系数
2、空间复杂度(按照从低到高的顺序O(1)、O(n)、o(n 2 )递归算法的空间复杂度和递
归深度成正比。)
第二章 数据结构基础
一、什么是数组
(一)数组的基本操作
1、读取元素
2、更新元素
3、插入元素
尾部插入
中间插入
超范围插入
4、删除元素
(二)数组的优势和劣势
优势:只要给出下标,就可以用常量时间找到对应元素。(如二分查找)
劣势:插入、删除元素都会导致大量元素被迫移动,影响效率。
二、什么是链表
(一)链表的种类
1、单向链表
2、双向链表
(二)链表的基本操作
1、查找节点
2、更新节点
3、插入节点
尾部插入
头部插入
中间插入
4、删除元素
尾部删除
头部删除
中间删除
前端笔记:
1、用于隐藏时的hover使用
控制子元素的隐藏展示,选择器用后代选择器就可以
.father_div {//父亲
}
.child_div {//儿子
width: 50px;
height: 50px;
background-color: yellow;
display: none;
}
.father_div:hover .child_div {
display: block;
控制兄弟元素的隐藏展示,用+选择器就可以
.second_div {
width: 50px;
height: 50px;
background-color: yellowgreen;
display: none;
}
.first_div:hover+.second_div {
display: block;
}
.second2_div {
width: 50px;
height: 50px;
background-color: yellowgreen;
display: none;
}
.first2_div:hover+div+div+.second2_div {
display: block;
}
网友评论