![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构与算法
南方铁匠
在深度学习和体系结构熔炉的铁匠
展开
-
AVL树的左旋右旋、计算高度以及判断是否完全
#include <iostream>#include <vector>#include <queue>using namespace std;struct node{ int val; struct node *left,*right;};node* leftRotate(node *tree){ node *temp = tree-...原创 2018-07-16 21:36:50 · 1416 阅读 · 0 评论 -
PAT 1018. Public Bike Management (30)
题目:自行车管理,从根结点出发,或者是带回自行车,或者是带着自行车去,一路上逐一平衡结点的自行车数量,知道最终的结点;要求找出最短路径,如果多条最短路径,就找最短路径中需要带的自行车的数量最少的原理:1. 建立邻接矩阵,这个矩阵,从根节点出发,遍历邻接矩阵,得到距离想要更新的结点的最短路径,这个路径也是存在一个vector中,vector类型的数组,vector数组中的元素表示当前结点的各...原创 2018-07-21 15:11:08 · 141 阅读 · 0 评论 -
PAT 1130. Infix Expression
这是建立二叉树,然后使用中序遍历表达数字表达式的问题解题思路就是先根据将输入的数据保存到vector中,vector中实际上也是node类型的,node中也指明了左右子节点,然后找visit【root】是false的结点,如果这个节点是false的,也就是这个节点不是任何一个结点的子节点,那么就是根节点。 在找到根节点之后,使用深度优先搜索,如果是非叶子节点的结点,那么就把这个节点的左...原创 2018-07-21 16:01:33 · 140 阅读 · 0 评论 -
图的DFS
def DFS_graph(graph,v0): vnum = graph.vertex_num() visited = [0]*vnum; visited[v0]=1 DFS_seq = [v0] st = SStack() st.push((0,graph.out_edges(v0)) while not st.is_empty():...原创 2018-09-04 09:53:28 · 528 阅读 · 0 评论 -
PAT Note
include头文件可以使用#include<bits/stdc++.h>替代代码截图摘自柳婼1003.急救,找到最短路径,最短路径的条数,并找到最短路径一路上的点权和使用dijkstra算法:声明数组e[510][510] 邻接矩阵用于表明结点之间的连接情况;在最开始时,将邻接矩阵赋值为极大值。 将起点的dis[c1]赋值为0后,在第一次处理中,肯...原创 2018-09-01 17:24:39 · 172 阅读 · 0 评论 -
1131 infix expression
1130 Infix Expression(25 分)Given a syntax tree (binary), you are supposed to output the corresponding infix expression, with parentheses reflecting the precedences of the operators.Input Specifica...原创 2018-10-23 20:13:11 · 97 阅读 · 0 评论 -
PAT 1131
In the big cities, the subway systems always look so complex to the visitors. To give you some sense, the following figure shows the map of Beijing subway. Now you are supposed to help people with you...原创 2018-10-23 21:42:19 · 413 阅读 · 0 评论