今天的话没有怎么学习,就对目前为止对上周内容还记得得内容总结一下。
1.对栈而言就是一个先进后出的结构,就相当于篮球放在框里这么情况。
在c语言中代码如下
typedef struct{
char data[100];
int top;
}sqstack;
栈在c中又有顺序结构和链式结构,其入栈出栈都和普通的顺序表和链表大同小异。
2.对队列而言,就是一个先进先出这么一个结构,就相当于平时排队这么个情况类似,c语言的代码的话就定义一个front和rear,他也有顺序和链式这么两种,想着简单,但是自己单独写感觉还是有点生疏,无从下笔,还是不太行。
3.树,对于树而言的话,一般都用的二叉树,二叉树又有几类,完全二叉树,满二叉树,满二叉树的话就是最后一层的节点全部都是满的,对于完全二叉树,就是结点按照顺序来安放的,对于二叉树的遍历,有三种,先序中序后序,先序就是中左右,中序就是左中右,后序就是左右中,对于树的遍历的话使用递归就可以,对于不同顺序的换个位置即可。
voidpreorder(struct node *root) {
if (root != NULL) {
cout<<root->data; // 访问根节点
preorder(root->left); // 递归访问左子树
preorder(root->right); // 递归访问右子树
}
}
4.对于图而言,好像就知道个无向图和有向图,对于图的遍历的可以用dfs bfs和dijkstra,对于定义来说的话现在还知道各个的意思,但是对于代码来说还是缺少感觉感觉不知道从何入手,还是写少了,明天周天在写写。
5.还搞了一点关于c++的一些简便函数,但是记的好多都有点忘了,还是得多写增强记忆。
6.感觉对于串,数组都没咋看,感觉和c比没啥区别,唯一记忆里有不同的就是串里有个匹配的什么算法。多学的感觉也想不到啥了,总的来说这周效率还是不太佳,题都没做多少道,下周争取多做题了,不能继续摆了!