原创 python實現二叉查找樹的查找、插入、刪除操作

本文用python3實現二叉查找樹的查找、插入、刪除操作。 完整代碼:https://github.com/toanoyx/BasicAlgorithm/tree/master/tree 查找 查找操作:先取根節點,如果它等於要查找的數那

原创 LeetCode 252 會議室

給定一個會議時間安排的數組,每個會議時間都會包括開始和結束的時間 [[s1,e1],[s2,e2],...] (si < ei),請你判斷一個人是否能夠參加這裏面的全部會議。 輸入:[[0,30],[5,10],[15,20]] 輸出:f

原创 python實現查找數組中第k大的數

本文用python3實現查找數組中第k大的數。採用快速排序的方法實現。 def findKth(s, k): return findKth_c(s, 0, len(s) - 1, k) def findKth_c(s, l

原创 python實現基於二分查找的求整數平方根

本文用python3實現基於二分查找的求整數平方根。 python3: def binarySearchSqrt(n): low = 1 high = 100 while low <= high:

原创 LeetCode 53 最大子序和

給定一個整數數組 nums ,找到一個具有最大和的連續子數組(子數組最少包含一個元素),返回其最大和。 輸入:[-2,1,-3,4,-1,2,1,-5,4] 輸出:6 python: class Solution: def ma

原创 吳恩達 機器學習課程 coursera 第二次編程作業(Logistic Regression) python實現

本文是吳恩達機器學習課程的第二次編程作業:Logistic Regression 的基礎作業,用python實現。   本作業包含5個文件,分別是: ex2.py :程序的主入口 costFunction.py :計算代價函數 gradi

原创 python實現二叉查找數的查找最小值、最大值操作

本文用python3實現二叉查找樹的查找最小值、最大值的操作。 查找最小值 def get_min(self): if self.root is None: return None

原创 python實現二叉樹的前序、中序、後序遍歷

本文用python3實現二叉樹的前序、中序、後序遍歷。 完整代碼鏈接:https://github.com/toanoyx/BasicAlgorithm/tree/master/tree from typing import TypeV

原创 python實現跳錶(Skip List)的查找、插入、刪除操作

跳錶(Skip List)是對鏈表改造後的動態數據結構,利用空間換時間的思想,建立多級索引來提高查找、插入、刪除操作的效率。 一層一層索引有點類似二分查找這種分而治之的思想。 在跳錶中查詢一個數據的時間複雜度是O( log n ),空間複

原创 二叉樹 (Binary Tree)的定義、存儲、遍歷

關於“樹”的幾個概念:     節點的高度 = 節點到葉子節點的最長路徑(邊數)     節點的深度 = 根節點到這個節點所經歷的邊的個數     節點的層數 = 節點的深度 + 1     樹的高度 = 根節點的高度 二叉樹     每

原创 產品面試:怎麼用產品思維去解決產品分析題

在面試產品崗的時候,經常會被面試官問到一些產品設計題,像是爲盲人設計一支筆、爲解決校園的痛點而設計一款產品……總之是有各種各樣的產品設計題,我們不可能在準備面試的時候把可能遇到的題目都遍歷一邊,所以需要整理出應對這類題目的解題思路和回答框

原创 python實現二分查找(遞歸、非遞歸)

本文用python3實現了二分查找算法,分別使用遞歸方法和非遞歸方法。 (一)遞歸實現 def binarySearch(s, k): return binarySearch_c(s, 0, len(s) - 1, k) d

原创 軟件風險因素與項目管理者的職責

1 項目管理者職責之外(無法控制或影響) 用戶部門之間的衝突;項目所有權或高層的變更;人員波動 2 項目管理者職責之內(有限的控制或影響) 缺乏用戶支持;範圍/目標的變更;缺乏客戶支持;缺乏高層管理者的承諾;角色和責任定義不當;採用新方法

原创 LeetCode 179 最大數

 給定一組非負整數,重新排列它們的順序使之組成一個最大的整數。 輸入:[3,30,34,5,9] 輸出:9534330   python3: class Solution: def largestNumber(self, num

原创 python實現二分查找的四種變體

本文用python3實現了二分查找的四種變體。 (一)查找第一個值等於給定值的元素 (二)查找最後一個值等於給定值的元素 (三)查找第一個大於等於給定值的元素 (四)查找最後一個小於等於給定值的元素   python3: (一)查找第一個