原创 [ 熱題 HOT 100]--- 62. 不同路徑 --- 動態規劃

1 題目描述 一個機器人位於一個 m x n 網格的左上角 (起始點在下圖中標記爲“Start” )。 機器人每次只能向下或者向右移動一步。機器人試圖達到網格的右下角(在下圖中標記爲“Finish”)。 問總共有多少條不同的路徑?

原创 [ 熱題 HOT 100]---64. 最小路徑和--- 動態規劃

1 題目描述 給定一個包含非負整數的 m x n 網格,請找出一條從左上角到右下角的路徑,使得路徑上的數字總和爲最小。 說明:每次只能向下或者向右移動一步。 示例: 輸入: [ [1,3,1], [1,5,1], [4,2,1]

原创 [ 熱題 HOT 100]---46. 全排列➕47. 全排列 II--- 回溯法/dfs

1 題目描述 全排列 給定一個 沒有重複 數字的序列,返回其所有可能的全排列。 全排列 II 給定一個可包含重複數字的序列,返回所有不重複的全排列。 2 解題思路 全排列 解決方法: 回溯

原创 [ 熱題 HOT 100]---55. 跳躍遊戲 --- 貪心算法

1 題目描述 給定一個非負整數數組,你最初位於數組的第一個位置。 數組中的每個元素代表你在該位置可以跳躍的最大長度。 判斷你是否能夠到達最後一個位置。 示例 1: 輸入: [2,3,1,1,4] 輸出: true 解釋: 我們可以

原创 【回溯法】some全排列➕組合總和➕括號生成中,摸爬滾打出的回溯法小結

0 初步理解 “回溯”算法也叫“回溯搜索”算法,主要用於在一個龐大的空間裏搜索我們所需要的問題的解。 我們每天使用的“搜索引擎”就是幫助我們在龐大的互聯網上搜索我們需要的信息。“搜索”引擎的“搜索”和“回溯搜索”算法的“搜索”意思

原创 [ 熱題 HOT 100]---48. 旋轉圖像 --- 數組/矩陣轉置➕翻轉行

1 題目描述 給定一個 n × n 的二維矩陣表示一個圖像。 將圖像順時針旋轉 90 度。 說明: 你必須在原地旋轉圖像,這意味着你需要直接修改輸入的二維矩陣。請不要使用另一個矩陣來旋轉圖像。 2 解題思路 方法 1 :轉

原创 [知識點梳理PART3] 走心整理的數據庫常見問題集錦

文章非原創,爲轉載,僅供個人學習使用。   本文原創作者:書呆子Rico   作者博客地址:http://blog.csdn.net/justloveyou_/ 1 數據庫範式 第一範式:列不可分,eg:【聯繫人】(姓名,性

原创 [ 熱題 HOT 100]---32. 最長有效括號---棧//困難等級

1 題目描述 給定一個只包含 ‘(’ 和 ‘)’ 的字符串,找出最長的包含有效括號的子串的長度。 示例 1: 輸入: “(()” 輸出: 2 解釋: 最長有效括號子串爲 “()” 示例 2: 輸入: “)()())” 輸出: 4

原创 [ 熱題 HOT 100]---33. 搜索旋轉排序數組---二分法

1 題目描述 2 解題思路 方法一:暴力法(Brute Force) 無視題目“你的算法時間複雜度必須是 O(\log n)O(logn) 級別”這項要求,採用線性掃描的方式搜索。 方法二:二分查找(Binary Se

原创 [數據庫] 數據庫範式--數據庫設計遵循的原則

黑馬程序員——數據庫視頻筆記 0 範式的概念 概念:範式就是符合某一規範級別的關係模式的集合。共有7種範式: 1NF ⊃ 2NF ⊃ 3NF ⊃ BCNF ⊃ 4NF ⊃ 5NF ⊃ 6NF 1 第一範式(First No

原创 [ 熱題 HOT 100] ---21. 合併兩個有序鏈表

1 題目描述 將兩個升序鏈表合併爲一個新的 升序 鏈表並返回。新鏈表是通過拼接給定的兩個鏈表的所有節點組成的。 示例: 輸入:1->2->4, 1->3->4 輸出:1->1->2->3->4->4 來源:力扣(LeetCode

原创 [ 熱題 HOT 100]---39. 組合總和-- 回溯法+剪枝

1 題目描述 給定一個無重複元素的數組 candidates 和一個目標數 target ,找出 candidates 中所有可以使數字和爲 target 的組合。 candidates 中的數字可以無限制重複被選取。 說明: 所

原创 [ 熱題 HOT 100]--- 23. 合併K個排序鏈表 ---分治法---困難等級

1 題目描述 合併 k 個排序鏈表,返回合併後的排序鏈表。請分析和描述算法的複雜度。 示例: 輸入: [ 1->4->5, 1->3->4, 2->6 ] 輸出: 1->1->2->3->4->4->5->6 來源:力扣(Lee

原创 [ 熱題 HOT 100] ---42. 接雨水 ---雙指針《困難等級》

1 題目描述 2 解題思路 方法:雙指針 我們先明確幾個變量的意思: left_max:左邊的最大值,它是從左往右遍歷找到的 right_max:右邊的最大值,它是從右往左遍歷找到的 left:從左往右處理的當前下標 r

原创 [ 熱題 HOT 100]---34. 在排序數組中查找元素的第一個和最後一個位置-- 暴力法/可用二分沒用

1 題目描述 給定一個按照升序排列的整數數組 nums,和一個目標值 target。找出給定目標值在數組中的開始位置和結束位置。 你的算法時間複雜度必須是 O(log n) 級別。 如果數組中不存在目標值,返回 [-1, -1]