原创 python中bisect的基本使用方法

 bisect包含四個模塊:   import bisect test = [1, 2, 6, 8, 19] print(bisect.bisect(test, 2)) #返回2的位置,如果不存在則返回左邊的值 print(bi

原创 322.LeetCode硬幣找零

題目描述: 初始化:inf,dp[0] = 0 採用方法:動態規劃 參考地址:https://www.cnblogs.com/grandyang/p/5138186.html coins = [1, 2, 5] amount = 11

原创 字典樹(Trie)

一、概述   1、基本概念   字典樹,又稱爲單詞查找樹,Tire數,是一種樹形結構,它是一種哈希樹的變種。      2、基本性質 根節點不包含字符,除根節點外的每一個子節點都包含一個字符 從根節點到某一節點。路徑上經過的字符連接起來,

原创 圖類問題的基本理解和java實現

一、圖的構建 參考地址:https://www.jianshu.com/p/f2a635b7b95e 1.1、圖的基本結構 1.2、無權無向圖: import java.util.*; public class graph { p

原创 並查集的理解與java實現

參考博客:https://www.cnblogs.com/SeaSky0606/p/4752941.html package practice; import java.util.Scanner; public class union

原创 閉包和裝飾器的基本使用

參考地址:https://www.cnblogs.com/paulwhw/p/8683990.html #閉包的定義 def outer(): def inner(): print('inner function

原创 2020小米二面編程題

問題一:尋找任意兩個整形的循環節 思路:對每次計算求餘數,如果餘數出現過那麼就相當於開始了之前的重複步驟; def calc(a, b, l1=[], l2=[]): while True: if (a % b)

原创 01揹包算法的理解

一、問題描述: 有編號分別爲a,b,c,d,e的N=5件物品,它們的重量w分別是2,2,6,5,4,它們的價值v分別是6,3,5,4,6,每件物品數量只有一個,現在給你個承重爲M=10的揹包,如何讓揹包裏裝入的物品具有最大的價值 二、原理

原创 leetcode323:無向圖中的連通區域的個數

題目描述: 參考博客:https://www.cnblogs.com/grandyang/p/5166356.html 題目地址:https://leetcode.com/problems/number-of-connected-comp

原创 2020秋招360綜合筆試一:編程題部分

第一題題目: 代碼: s = 'aba' import collections print(max(collections.Counter(s).values()))   第二題題目: 代碼: n, m = 10, 3 D =

原创 美團2019筆試:外賣滿減

題目描述: 題目地址:https://www.nowcoder.com/questionTerminal/95329d9a55b94e3fb2da475d3d052164 代碼實現: #n, x = 5, 20 #a = [18, 1

原创 美團2019秋招筆試:考試策略

題目描述: 題目地址:https://www.nowcoder.com/questionTerminal/a1792d443f914f2b928d2a157cd7900d 我的代碼實現: n = int(input()) k =

原创 alias採樣:一種時間複雜度爲O(1)的採樣方法

一、算法原理: 參考博客:https://blog.csdn.net/haolexiao/article/details/65157026 論文地址:http://citeseerx.ist.psu.edu/viewdoc/downloa

原创 2020秋招滴滴:

題目描述:   代碼: for i in range(len(s)): if s[i] in ['+','-','*','/']: j=i break for i in range(len(

原创 最大堆最小堆的理解

  #堆排序 def heapify(s, head_idx, size): max_idx = head_idx left = head_idx * 2 + 1 right = head_idx * 2 + 2