算法-数据结构 关于算法-数据结构:PAT甲级1139-First-Contact 一张人际关系网络图,而后给出一对情侣A和B(正数代表女生,负数代表男生),要求找到A的敌人(不是B,和A性别雷同)C,B的敌人(不是A,和B的性别雷同)D,如果C和D是敌人那么输入C和D的编号(输入的编号均为负数),并且依照C的非递加排列,如果雷同,则依照D的升序排列。
算法-数据结构 关于算法-数据结构:PAT甲级1138-Postorder-Traversal 这里采纳不建树然而借鉴建树的过程,后序遍历第一个结点实际上是左子树最左的结点,咱们只须要一直递归拜访左子树,直到第一次遇到最左的结点即可,这里应用变量c来管制是否是第一次拜访,初始为0,在c==0&&preL==preR阐明是第一次达到最左的结点,那么就输入以后结点并且++c。
算法-数据结构 关于算法-数据结构:PAT甲级1137-Final-Grading 给出三个名单表格,别离记录考生的在线编程的问题、期中问题和期末问题;须要计算最终问题,而后筛选出可能取得证书的名单,并依照最终问题的降序和ID的升序排列输入。
算法-数据结构 关于算法-数据结构:PAT甲级1136-A-Delayed-Palindrome 给定一个不超过1000位的数字A,如果是回文数,就输入A is a palindromic number.否则就计算该数和其逆置数的和如果在10次计算内其后果C是回文数,就输入每一步的计算过程和C is a palindromic number.
算法-数据结构 关于算法-数据结构:PAT甲级1134-Vertex-Cover 如果一个图的所有边的领接点至多有一个点在汇合中,那么就称为这个汇合为一个vertex cover,现给出一个图的顶点N和边数M,M条边的信息,和K次查问的汇合元素,问以后汇合是否是该图的一个vertex cover。
算法-数据结构 关于算法-数据结构:PAT甲级1133-Splitting-A-Linked-List 给定一个单链表,节点数目N和阈值K,从新将链表依照如下规定进行排序,节点值小于0的在最右边,[0,K]的在两头,大于K的在最左边,同时同一类别的节点其绝对程序不能扭转.
算法-数据结构 关于算法-数据结构:PAT甲级1132-Cut-Integer 看到宰割问题,首先想到的是字符串宰割,咱们采纳string s来承受输出的数字,而后将其前半部分宰割并转化为整数为a,后半局部宰割并转化为整数为B,并将s转化为整数z,如果z%(a*b)==0,输入Yes,否则输入No。
算法-数据结构 关于算法-数据结构:PAT甲级1131-Subway-Map 一开始想到的是用Dijkstra算法求解该问题,然而Dijkstra算法更适宜求解第一标尺为边权相干问题,所以想到了DFS,并设置其参数depth,用来记录在从终点到起点的遍历过程中所经验的结点个数,而后采纳全局量minDepth保留最小的depth,为了不便判断是否是直达结点问题,应用邻接矩阵存储两个连贯的点的边对应的线路,比方2000…
算法-数据结构 关于算法-数据结构:PAT甲级1072-Gas-Station 当初有N座房子,M个加油站待抉择点,K条边,当初要在M个加油站待抉择点抉择一个加油站进去,要求满足间隔N个房子尽可能远然而同时也得保障房子均在服务范畴Ds中,如果有多个抉择均匀间隔最小的,如果还有多个,抉择编号最小的 。
算法-数据结构 关于算法-数据结构:PAT甲级1087-All-Roads-Lead-to-Rome 有N个城市,K条无向边,当初须要从某个给定的起始城市登程,返回名为”ROM”的城市,给出每条边所须要耗费的破费,求从起始城市登程,达到城市ROM所须要的起码破费,并输入起码破费的门路。如果这样的门路有多条,则抉择门路上城市的幸福值之和最大的那条门路,如果门路依然不惟一,则抉择门路上城市的均匀幸福值最大的那条 。