摘要:
SOLID: 单一原则(SRP):一个类只应该负责一件事。如果一个类有多个职责,那么它变成了耦合的。对一个职责的修改会导致对另一个职责的修改。 开闭原则(OCP):软件实体(类、模块、函数)应该对扩展开放,对修改关闭 里氏替换(LSP):子类对父类函数进行重写,子类必须可以替换它的父类。 接口隔离( 阅读全文
摘要:
" 在我们那里,人是最珍贵的。话要说的更有道理,而不是提高音量,毕竟滋养花朵的是雨水,而不是雷鸣“ ”我叫苏莱曼,我的爸爸是个教师,我的妈妈是个作家。有一天我在路上看到一个玩具,就把它捡起来了。它爆炸了。我不记得后面发生什么了,因为,那就是故事的结局。” parvana-帕瓦娜 现实与理想 友情 阅读全文
摘要:
题目: https://leetcode.com/problems/max-area-of-island/description/ 阅读全文
摘要:
题目: https://leetcode.com/problems/maximum-depth-of-n-ary-tree/description/ n-ary-tree的数据结果表示 DFS算法:迭代 BFS算法:队列 阅读全文
摘要:
一.简单排序 冒泡排序: 插入排序: 逆序对 希尔排序: 阅读全文
摘要:
一,什么是图 表示多对多的关系 图包含一组顶点和一组边(不考虑重边和自回路) 二,图的表示 邻接矩阵表示图:有边的表示1,无边的表示0 邻接矩阵优点: 邻接矩阵缺点: 邻接表:只存非零元素,不唯一,稀疏图 三,图的遍历 DFS(深度优先搜索,Depth First Search): 原路返回=>树的 阅读全文
摘要:
三,队列 队列(操作受限制的线性表):先进先出,一端插入,另一端输出 队列的顺序存储实现:数组+对头变量+队尾变量 如果是正常的线状队列,前面删除数据部分的空间无法使用,会造成浪费;所有出现循环队列 循环队列会出现的问题:空满时front==rear都是相等,无法区分 原因:n种长度值对应n+1种情 阅读全文
摘要:
二,堆栈 中缀表达式:运算符位于两数之后; a+b*c-d/e 后缀表达式:运算符位于两数之后; abc*+de/-;计算机表示式求解时的读法;用堆栈实现计算 前缀表达式:运算符位于两数之前; -+a*bc/de 堆栈(操作受限制的线性表),先入后出,只在一端(栈顶,top)做插入和删除 push和 阅读全文
摘要:
一,什么是树 层次关系 分层次组织在管理上具有更高的效率 查找: 静态查找:记录固定,无插入和删除 动态查找:记录变化,有插入和删除 二,二叉树及其存储结构 树的定义: 二叉树:“儿子-兄弟”表示法;二叉树有左右之分 二叉树的遍历(递归方法实现): 二叉树存储结构: 顺序存储结构 完全二叉树:层次遍 阅读全文
摘要:
一. 线性表及其实现 如何表示多项式:f(x)=a0+a1x+...+an-1xn-1+anxn 顺序存储结构直接表述:一般数组 顺序存储结构表示非零项:结构数组 方法二中如果要对各项进行相加时,注意两项的指数需要按照降序或者升序排列 链表结构存储非零项 线性表:由同类型数据元素(可以是自定义的结构 阅读全文