/** * Dijkstra算法(單起點最短路徑) <br/> * 基於貪婪算法,每次各點到起點的距離中選出最小權重(該值u初始值爲點到起點的距離, 如果點沒有連接起點的邊,則值爲正無窮)的點n加入到樹中 *…
分类:算法
Java實現堆排序
堆排序 堆排序是另一種選擇排序方法,它是樹型選擇排序的改進,它使用的輔助空間較少,僅需要一個元素用於空間交換。 堆:根結點的關鍵碼值或者大於左右子樹或者都小於左右子樹,而且左右子樹也是堆。 如果每個結點的值都大於左右子樹…
【java数据结构与算法学习】汉诺塔
汉诺塔是递归分治思想不得不说的经典案例。 汉诺塔(又称河内塔)问题是源于印度一个古老传说的益智玩具。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面…
CODEVS 1068 乌龟棋(揹包型DP)
1068 乌龟棋 2010年NOIP全国联赛提高组 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题解 题目描述 De…
Map大家族的那点事儿
Map Map是一种用于快速查找的数据结构,它以键值对的形式存储数据,每一个键都是唯一的,且对应着一个值,如果想要查找Map中的数据,只需要传入一个键,Map会对键进行匹配并返回键所对应的值,可以说Map其实就是一个存放…
Leetcode - Logger Rate Limiter
My code: import java.util.concurrent.ConcurrentHashMap; public class Logger { ConcurrentHashMap<String, Int…
Leetcode - Basic Calculator II
My code: public class Solution { public int calculate(String s) { if (s == null || s.length() == 0) { return -…
Leetcode - Valid Sudoku
My code: import java.util.HashSet; public class Solution { public boolean isValidSudoku(char[][] board) { if (…
Leetcode 51. N-Queens
回溯法,非递归求 N 皇后问题所有解,Python 3 实现: 源代码已上传 Github,持续更新。 """ 51. N-Queens The n-queens puzzle is the problem of pla…
leetcode: Search Insert Position
题目: Search Insert Position Given a sorted array and a target value, return the index if the target is found. I…
古罗马数字转十进制
问题描述 古罗马帝国开创了辉煌的人类文明,但他们的数字表示法的确有些繁琐,尤其在表示大数的时候, 现在看起来简直不能忍受,所以在现代很少使用了。之所以这样,不是因为发明…
[Leetcode][二分查找]相关题目汇总/分析/总结
题目汇总 以下链接均为我博客内对应博文,有解题思路和代码,不定时更新补充。 目前范围:Leetcode前150题 二分查找相关题目 两个排序数组的中位数 请找出这两个有序数组的中位数。要求算法的时间复杂度为 O(log …