摘要: 类似Dijkstra算法,但是此时d[]表示顶点Vi与集合S的最短距离 kruskal算法: 运用并查集,判断两个点是否在一个及集合中,,即测试两个端点是否在不同连通块中 阅读全文
posted @ 2018-04-09 16:39 Sunshine&暖阳 阅读(94) 评论(0) 推荐(0) 编辑
摘要: 输入一个图,求出起点V0到达所有顶点的最短距离 阅读全文
posted @ 2018-04-08 20:19 Sunshine&暖阳 阅读(97) 评论(0) 推荐(0) 编辑
摘要: 思想:反复选择两个最小的元素合并,直到只剩下一个元素 阅读全文
posted @ 2018-04-08 14:23 Sunshine&暖阳 阅读(120) 评论(0) 推荐(0) 编辑
摘要: 首先建堆:假设序列中元素个数为n,由于完全二叉树的叶子节点个数为n/2(向上取整),所以数组下标在【1,n/2】范围内的结点都是非叶子结点 堆顶元素最大,所以每次取最后一个元素替换置堆顶,在进行从【1,i-1】范围的向下调整 阅读全文
posted @ 2018-04-08 14:04 Sunshine&暖阳 阅读(133) 评论(0) 推荐(0) 编辑
摘要: 输入:数码宝贝个数n和好朋友组数m 接下来有m行,每行两个正整数a,b:表明a和b是好朋友 输出:好朋友的组数 思路:对同一个集合来说只有一个根节点,所以开一个bool型数组flag[N]来记录每个结点是否作为某个集合的根结点 阅读全文
posted @ 2018-04-07 21:50 Sunshine&暖阳 阅读(133) 评论(0) 推荐(0) 编辑
摘要: N个整数选k个使其和为x,若有多个方案,选择元素平方和最大的一个 若是改为: N个数中选k个,且每个可选多次,只需改为 阅读全文
posted @ 2018-04-05 18:34 Sunshine&暖阳 阅读(238) 评论(0) 推荐(0) 编辑
摘要: 主要利用栈和队列实现简单的计算器功能,保证正确的运算顺序:步骤一:将中缀表达式转换为后缀表达式 步骤二:计算后缀表达式 阅读全文
posted @ 2018-04-02 11:45 Sunshine&暖阳 阅读(84) 评论(0) 推荐(0) 编辑