数据结构C++版-图
一、概念及分类
二、图的存储结构
1、邻接矩阵
顶点:
弧:
边:
表达式语句:
2、邻接表
逆邻接表:
3、十字链表
4、邻接多重表
三、图的权值概念及遍历
权值:
图的遍历:
1.深度优先搜索
2.广度优先搜索
3.图的最小生成树
1)普利姆算法
2)克鲁斯卡尔算法:
四、补充知识点
1、课程下某评论:
给我最深的感触是:
1. 先用中文把代码思路写出来,然后一个一个去编写;
2. 先想清楚函数结束的条件;
3. 如果编写过程中,遇到一些难以解决的小功能,就先把它函数化,之后再补全这个函数;
2、如何准备算法及面试
除了日常进行算法练习外,对于找工作的小伙伴们来说,如何在面试过程中更好地在算法环节脱颖而出还是有迹可循的。从九章算法那可以总结如下:
1.面试过程要有适当的沟通
2.听到问题后要讲自己的理解
3.与面试官沟通题目的细节
4.告诉面试官自己的想法或算法
虽说练习算法偏向于算法本身,但是好的代码风格还是很有必要的。粗略可分为以下几点:
代码块可为三大块:异常处理(空串和边界处理),主体,返回
代码风格(可参考Google的编程语言规范)
1.变量名的命名(有意义的变量名)
2.缩进(语句块)
3.空格(运算符两边)
4.代码可读性(即使if语句只有一句也要加花括号)
《代码大全》中给出的参考
而对于实战算法的过程中,我们可以采取如下策略:
1.总结归类相似题目
2.找出适合同一类题目的模板程序
3.对基础题熟练掌握