原创 Leedcode編程題41: 缺失的第一個正數----C++實現

目的: 旨在記錄在Leedcode網上刷題的過程,記錄心得。 題目: 給你一個未排序的整數數組,請你找出其中沒有出現的最小的正整數。 示例 1: 輸入: [1,2,0] 輸出: 3 示例 2: 輸入: [3,4,-1,1] 輸出: 2 示

原创 Leedcode編程題283:移動零----C++實現

目的 旨在記錄在Leedcode網上刷題的過程,記錄心得。 題目 給定一個數組 nums,編寫一個函數將所有 0 移動到數組的末尾,同時保持非零元素的相對順序。 示例: 輸入: [0,1,0,3,12] 輸出: [1,3,12,0,0]

原创 Leedcode編程題27:移除元素----C++實現

目的 旨在記錄在Leedcode網上刷題的過程,記錄心得。 題目 給定一個數組 nums 和一個值 val,你需要原地移除所有數值等於 val 的元素,返回移除後數組的新長度。 不要使用額外的數組空間,你必須在原地修改輸入數組並在使用 O

原创 如何找數組中重複次數最多的數?---python實現

目的: 旨在記錄python編程練習過程,記錄心得。 題目: 如何找數組中重複次數最多的數? 例如:【1,1,2,2,3,4,4,4,4,5,5,5,5,6,6】 應輸出元素4 思路: 先處理數據,使用字典來保存「元素:元素出現次數」

原创 Leedcode編程題88:合併兩個有序數組----C++實現

目的 旨在記錄在Leedcode網上刷題的過程,記錄心得。 題目 給定兩個有序整數數組 nums1 和 nums2,將 nums2 合併到 nums1 中,使得 num1 成爲一個有序數組。 說明: 初始化 nums1 和 nums2 的

原创 Leedcode編程題75:顏色分類----C++實現

目的 旨在記錄在Leedcode網上刷題的過程,記錄心得。 題目 給定一個包含紅色、白色和藍色,一共 n 個元素的數組,原地對它們進行排序,使得相同顏色的元素相鄰,並按照紅色、白色、藍色順序排列。 此題中,我們使用整數 0、 1 和 2

原创 Leedcode編程題454: 四數相加II----C++實現

目的 旨在記錄在Leedcode網上刷題的過程,記錄心得。 題目 給定四個包含整數的數組列表 A , B , C , D ,計算有多少個元組 (i, j, k, l) ,使得 A[i] + B[j] + C[k] + D[l] = 0。

原创 Leedcode編程題18: 四數之和----C++實現

目的 旨在記錄在Leedcode網上刷題的過程,記錄心得。 題目 給定一個包含 n 個整數的數組 nums 和一個目標值 target,判斷 nums 中是否存在四個元素 a,b,c 和 d ,使得 a + b + c + d 的值與 t

原创 Leedcode編程題23: 合併K個排序鏈表----C++實現

目的 旨在記錄在Leedcode網上刷題的過程,記錄心得。 題目 合併 k 個排序鏈表,返回合併後的排序鏈表。請分析和描述算法的複雜度。 示例: 輸入: [   1->4->5,   1->3->4,   2->6 ] 輸出: 1->1-

原创 Leedcode編程題209:長度最小的子數組----C++實現

目的 旨在記錄在Leedcode網上刷題的過程,記錄心得。 題目 給定一個含有 n 個正整數的數組和一個正整數 s ,找出該數組中滿足其和 ≥ s 的長度最小的連續子數組。如果不存在符合條件的連續子數組,返回 0。 示例:  輸入: s

原创 二叉樹的創建和遍歷---C++實現

1. 二叉樹概念 二叉樹是一顆樹,其中每個節點都不能有多於2個的子樹,一般會有左子樹和右子樹,兩者均可能爲空。 二叉樹實際上是圖。 2. 二叉樹節點和類的聲明 創建樹之前需要先聲明一個樹的結點。 //聲明樹結點 typedef stru

原创 Leedcode編程題217: 存在重複元素 ----C++實現

目的 旨在記錄在Leedcode網上刷題的過程,記錄心得。 題目 給定一個整數數組,判斷是否存在重複元素。 如果任何值在數組中出現至少兩次,函數返回 true。如果數組中每個元素都不相同,則返回 false。 示例 1: 輸入: [1,2

原创 Leedcode編程題49: 字母異位詞分組----C++實現

目的 旨在記錄在Leedcode網上刷題的過程,記錄心得。 題目 給定一個字符串數組,將字母異位詞組合在一起。字母異位詞指字母相同,但排列不同的字符串。 示例: 輸入: ["eat", "tea", "tan", "ate", "nat"

原创 Leedcode編程題26:刪除排序數組中的重複項----C++實現

目的 旨在記錄在Leedcode網上刷題的過程,記錄心得。 題目 給定一個排序數組,你需要在原地刪除重複出現的元素,使得每個元素只出現一次,返回移除後數組的新長度。 不要使用額外的數組空間,你必須在原地修改輸入數組並在使用 O(1) 額外

原创 Leedcode編程題451: 根據字符出現頻率排序----C++實現

目的 旨在記錄在Leedcode網上刷題的過程,記錄心得。 題目 給定一個字符串,請將字符串裏的字符按照出現的頻率降序排列。 示例 1: 輸入: "tree" 輸出: "eert" 解釋: 'e'出現兩次,'r'和't'都只出現一次。 因