原创 leetcode Integer Break

      動態規劃問題解題思路:   1.遞歸解法(效率偏低) /// 343. Integer Break /// https://leetcode.com/problems/integer-break/description

原创 7屆藍橋杯第6題方格填數

方格填數 如下的10個格子    +--+--+--+    |  |  |  | +--+--+--+--+ |  |  |  |  | +--+--+--+--+ |  |  |  | +--+--+--+ (如果顯示有問題,也可以參

原创 搭積木+寒假作業+方格填數 DFS解法

藍橋杯比賽關於 DFS 算法總結方法以及套路分析 首先我們來看幾道java A組的題目,都是同一年的哦!!! 搭積木 小明最近喜歡搭數字積木, 一共有10塊積木,每個積木上有一個數字,0~9。 搭積木規則: 每個積木放到其它兩個積木的

原创 藍橋-天秤稱重問題

經典算法之天秤稱重問題 問題描述: 已知所有砝碼重量均爲3的倍數,且所有重量的砝碼有且只有一個 要求輸出1到n的所有物品的稱重方式 解題思路: 物品重量    砝碼 1    1 2    3 - 1 3    3 4    3 + 1

原创 一 . 暴力破解與實用性優先

做題目時:能枚舉就枚舉,能逆向就逆向,先試探一個解。 1. 猜年齡 【問題描述】 美國數學家維納(N.Wiener)智力早熟,11歲就上了大學。 他曾在1935~1936年應邀來中國清華大學講學。 一次,他參加某個重要會議,年輕的臉孔引人

原创 藍橋-分酒問題

3. 分酒問題 有4個紅酒瓶子,它們的容量分別是:9升, 7升, 4升, 2升 開始的狀態是 [9,0,0,0],也就是說:第一個瓶子滿着,其它的都空着。 允許把酒從一個瓶子倒入另一個瓶子,但只能把一個瓶子倒滿或把一個瓶子倒空,不能有中間

原创 【藍橋杯】最小公倍數和最大公約數

最大公約數就是遞歸求的:   最小公倍數= a*b/gcd(a,b)

原创 回溯法總結+四個小例題(裝載問題,01揹包,n後,最大團,m着色)

目錄   回溯法的基本策略  回溯法的基本策略 回溯法的解空間 回溯法基本思想 回溯法解題步驟 遞歸回溯和迭代回溯 子集樹和排列樹 裝載問題 01揹包問題回溯法求解 n後問題 圖的最大團問題 圖的m着色問題  回溯法的基本策略 策略:

原创 7屆藍橋杯第8題 -四平方和

四平方和 四平方和定理,又稱爲拉格朗日定理: 每個正整數都可以表示爲至多4個正整數的平方和。 如果把0包括進去,就正好可以表示爲4個數的平方和。 比如: 5 = 0^2 + 0^2 + 1^2 + 2^2 7 = 1^2 + 1^2 +

原创 二分查找思想(使用遞歸和不適用遞歸的思想)

  public class BinarySearch { public static void main(String[] args) { int[] array = { 1, 2, 3, 4, 5, 6, 7, 8, 9,

原创 二叉樹的存儲結構

二叉樹的存儲有順序存儲結構和鏈式存儲結構 其中順序存儲結構造成了很大的資源浪費。

原创 二叉樹,平衡二叉樹,紅黑樹,B-樹、B+樹、B*樹的區別

二叉查找/搜索/排序樹  BST  (binary search/sort tree) 或者是一棵空樹; 或者是具有下列性質的二叉樹: (1)若它的左子樹不空,則左子樹上所有結點的值均小於它的根節點的值; (2)若它的右子樹上所有結點的值

原创 圖的概念

圖(graph)是一種網狀數據結構,圖是由非空的頂點集合和一個描述頂點之間關係的集合組成。     其形式化的定義如下: Graph = ( V , E ) V = {x| x∈某個數據對象} E = {<u , v>| P(u , v)

原创 數據結構與算法中的排序

什麼是排序 排序(sorting) )的功能是將一個數據元素的任意序列,重新排列成一個按關鍵字有序的序列。 其確切的定義爲: 假設有n個數據元素的序列{R 1 , R 2 , … , R n },其相應關鍵字的序列是{K 1 , K 2

原创 算法設計中常用的規律性數據類型轉換

案例一: 1/2 錯誤寫法: double a= 1/2  正確寫法: double a=1/2*1.0;    答案爲0.5   案例二: 字符轉int       '2'轉爲2  正確寫法: int a= '2'-'0' 案例