原创 2021年秋招面試算法總結

面試常考算法 0:前言 每一道算法題,AC之後要會分析這道題的時間複雜度和空間複雜度,面試經常會被問到。 一道算法題只刷一遍肯定是不夠的,做過的算法題刷3遍左右。 hard難度的題有時間可以刷,沒時間不要勉強,因爲投入產出比非常

原创 Leetcode 450. Delete Node in a BST

一:題意: 刪除一顆二叉搜索樹的一個節點。 二:思路 二叉搜索樹的結點刪除比插入較爲複雜,總體來說,結點的刪除可歸結爲三種情況: 1、 如果結點z沒有孩子節點,那麼只需簡單地將其刪除,並修改父節點,用NIL來替換z; 2、 如果

原创 Leetcode 1376. Time Needed to Inform All Employees (DFS+BFS)

一:DFS class Solution(object): def numOfMinutes(self, n, headID, manager, informTime): subordinates = colle

原创 面試題:連續子數組的最大和與循環列表中的子數組最大和

一:連續子數組的最大和 LeetCode 53 Maximum Subarray 題意:給定一個整數數組 nums ,找到一個具有最大和的連續子數組(子數組最少包含一個元素),返回其最大和。 定義dp[i]爲前i個數中的連續子數組

原创 leetcode 2-sum,3-sum,k-sum總結

百度面試問到這個,之前雖然做過,但是面試還是表現的不好,所以寫下來總結一下。 一:leetcode 1. Two Sum 數組中找兩數之和等於0;要求時間複雜度和空間複雜度都是O(N) 使用哈希表來做! class Solutio

原创 排序(冒泡+選擇+插入+快排+歸併+堆排序)--python實現

一:LintCode 463 Sort Integers(用冒泡、選擇、插入) 給一組整數,按照升序排序,使用選擇排序,冒泡排序,插入排序或者任何 O(n2) 的排序算法。 class Solution: def sort

原创 Leetcode Weekly Contest 175

1346. Check If N and Its Double Exist 題意:給定一個數組,檢查其中是否存在兩個數M,N,滿足M*2==N。即滿足: i != j 0 <= i, j < arr.length arr[i]

原创 快速排序中的一次partition習題

一:lintCode 31. 數組劃分 題意: 給出一個整數數組 nums 和一個整數 k。劃分數組(即移動數組 nums 中的元素),使得: 所有小於k的元素移到左邊 所有大於等於k的元素移到右邊 返回數組劃分的位置,即數組中第

原创 Leetcode 146. LRU Cache + 460. LFU Cache 原理及代碼實現

一:LRU Cache原理 詳細請見鏈接:https://www.jianshu.com/p/74a4efacb0a7 二:Python實現 class LinkedNode(object): def __init__(s

原创 ubuntu下搭建ad-hoc網絡實現多臺設備進行網絡通信(通過配置文件)

通過圖形界面配置請看:https://blog.csdn.net/weixin_44038165/article/details/99946033 最近實驗室做的一些工作需要使用lattepanda(類似增強的樹莓派)並且使用其無

原创 編程計算組合數

問題 組合數是C(n,m),是排列組合中非常重要的一部分,直接按照公式求階乘會超過int,long的範圍,因此需要技巧來編程求解. 本來想自己寫一篇博客,但是看到某位大佬寫的比我想寫的還要全,因此先放上他博客的鏈接: (https

原创 二叉樹的最大深度和最小深度及應用在判斷平衡二叉樹上

文章目錄104. Maximum Depth of Binary Tree方法一:遞歸,運行40ms方法二:層次遍歷,運行28ms111. Minimum Depth of Binary Tree方法一:Wrong answer方

原创 leetcode 136. Single Number + 137. Single Number II + 260. Single Number III

136. Single Number 題意:給定一個數組,只有一個數出現一次,其餘數都出現兩次,找出這個單獨出現一次的數。 解法一:數學方法,2*(a+b+c)-(a+a+b+b+c) = c 解法二:位運算:a^a = 0 異

原创 Leetcode 54. Spiral Matrix and 59. Spiral Matrix II

一:Leetcode 54. Spiral Matrix Given a matrix of m x n elements (m rows, n columns), return all elements of the matri

原创 Leetcode 347. Top K Frequent Elements -- 桶排序

題意 Given a non-empty array of integers, return the k most frequent elements. Input: nums = [1,1,1,2,2,3], k = 2 Out