1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <ctype.h> 4 #include <stdbool.h> 5 #define MAXSIZE 7 6 typedef int ElemType; 7 typedef struct Or ...
分类:
编程语言 时间:
2020-05-19 14:32:17
阅读次数:
55
一、算法定义 假设当你正在使用适当的输入数据进行一些计算。你在每个实例中都进行了一些计算,以便得到一些结果。当你提供相同的输入时,你不知道会有相同的输出,这就导致了你之前计算某些结果的宝贵时间被浪费掉了。你可以通过保存之前的计算结果去轻易地解决这个问题。比如通过使用恰当的数据结构等。 现在通过分析这 ...
分类:
编程语言 时间:
2020-05-19 14:13:27
阅读次数:
61
功能描述 输入:大学排名URL链接 输出:大学排名信息的屏幕输出(排名,大学名称,总分) 技术路线:requests-bs4 定向爬虫:仅对输入URL进行爬取,不扩展爬取 程序的结构设计 步骤1:从网络上获取大学排名网页内容 getHTMLText() 步骤2:提取网页内容中信息到合适的数据结构 ...
分类:
其他好文 时间:
2020-05-19 12:31:40
阅读次数:
107
AddressBookTest是测试类 package MyADB; import java.util.InputMismatchException; import java.util.Scanner; class InstructionsMistake extends Exception { pu ...
分类:
编程语言 时间:
2020-05-19 12:16:38
阅读次数:
138
摘要:递归是一种应用非常广泛的算法(或者编程技巧)。之后我们要讲的很多数据结构和算法的编码实现都要用到递归,比如DFS深度优先搜索、前中后序二叉树遍历等等。所以,搞懂递归非常重要,否则,后面复杂一些的数据结构和算法学起来就会比较吃力推荐用户注册领取佣金很多人都遇到过,很多App在推广的时候都是这个套路。「萧何」
分类:
编程语言 时间:
2020-05-19 00:37:43
阅读次数:
68
题目链接 直接算每次破坏会拆开多少个连通块貌似不可做。考虑反着加边用并查集合并。 那么我们首先用$vector$存下每个点出边到的点的序列。注意:$m\in[1,2\times 10^5]$而$n\in [1,2\times m]$所以$n\in [1,4\times 10^5]$。 读入破坏的顺序 ...
分类:
Web程序 时间:
2020-05-18 22:42:30
阅读次数:
79
什么是红黑树? 红黑树的定义 每个节点或者是红色的,或者是黑色的。 根节点是黑色的。 每一个叶子节点(最后的空节点)是黑色的。 如果一个节点是红色的,那么他的孩子节点都是黑色的。 从任意一个节点到叶子节点,经过的黑色节点是一样的。 直接看到这些定义是非常难以理解的,红黑树为什么这样定义? 在算法4这 ...
分类:
其他好文 时间:
2020-05-18 20:42:42
阅读次数:
42
思路,将一个数组不断拆分,拆到一个元素之后,倒过来一步步排好序,获得新的数组 [55,23,66,905,56,85,356,30,57,34,832,230] left=[55,23,66,905,56,85] right=[356,30,57,34,832,230] left可以看成一个新数组, ...
分类:
编程语言 时间:
2020-05-18 18:18:53
阅读次数:
64
"maki和tree" "魔法师" 都是并查集来求的 有一棵树,树上每一个点有一个颜色,白色或者黑色,然后可以把一个黑色变成白色。求白色的最大连通块 把每一个黑色点看成并查集的根节点,然后与这个黑色点连通的白色点都是这个并查集里面的点 那么并查集最大值就是答案 ...
分类:
其他好文 时间:
2020-05-18 13:57:37
阅读次数:
56