原创 設計一個隨機算法,將一個整數M分成N份 要求每份在區間【minV, maxV】之間
設計一個隨機算法,將一個整數M分成N份 要求每份在區間【minV, maxV】之間 輸入:M, N, minV, maxV 輸出: N個隨機整數 import random def randomSplit(M, N, minV, max
原创 機器學習算法筆記(一)
(1)容斥原理 a. 容斥原理是組合數學方法,可以求解集合、複合事件的概率等。 b. 計算幾個集合並集的大小,先計算出所有單個集合的大小,減去所有兩個集合相交的部分,加上三個集合相交的部分,再減去四個集合相交的部分,以此類推,一直計算到所
原创 堆存儲、堆排序 python實現
|—使用堆實現優先隊列: 對於總共N個請求 使用普通數組或者順序數組 最差情況O(N^2) 使用堆 O(N*Log N)|-堆的基本實現 二叉堆:任何一個子節點都不大於他的父節點
原创 最長公共子序列LCS理解和實現[python]
問題:給定兩個字符串S1和S2,求這兩個字符串的最長公共子序列的長度例子: S1= ABCD,S2=AEBD,最長公共子序列長度爲3思路: 1.自頂向下的方法 |-回溯法: 時間複
原创 揹包問題與動態規劃[python]
問題描述:有一個揹包,他的容量爲C。現在有n種不同的物品 編號爲0...n-1,其中每一件物品的重量爲w(i),價值爲v(i)。問可以向這個揹包中存放哪些物品,使得在不超過揹包容量的基礎上,物品的總價值最大 解決思路:
原创 哈希表衝突解決方法方法總結
參考書籍:《大話數據結構》 1. 開放定址法:一旦發生衝突,就去尋找下一個空的散列地址。 只要列表足夠大,空的散列地址總能找到,並將記錄存入。 線性探測法:當使用線性探測法進時,會吹按不是同義詞卻需要爭奪一個地址的情況,
原创 貪心算法理解
本文轉自: https://blog.csdn.net/a925907195/article/details/41314549,如涉及版權請聯繫我一、基本概念: 所謂貪心算法是指,在對問題求解時,總是做出在當前看來是最好的選擇。
原创 範數簡單理解
什麼是範數?我們知道距離的定義是一個寬泛的概念,只要滿足非負、自反、三角不等式就可以稱之爲距離。範數是一種強化了的距離概念,它在定義上比距離多了一條數乘的運算法則。有時候爲了便於理解,我們可以把範數當作距離來理解。在數學上,範數包括向量範
原创 解決skmultilearn.ensemble.rakelo庫中的預測值全0問題
找到 rakelO源碼中的rakelo.py 文件此處在最後m個lp分類器進行投票求平均時 源碼的分母是voters[column] 也就是統計了預測結果中該標籤的所有取值的和在進行四捨五入,這樣的出的結果
原创 斐波那契數列理解動態規劃問題[python]
動態規劃 |-定義:將原問題拆解成若干子問題,同時保存子問題的答案,使得每個子問題只求解一次,最終獲得原問題的答案 |-解決的問題: 遞歸問題->重疊子問題 -> 記憶化搜索(
原创 二分搜索樹及相關算法python實現
|-二分查找法 時間複雜度O(logn)|-二分搜索樹 特點: 高效 不接可以查找數據 插入刪除數據的複雜度都是O(logn) 可以方便的回答很多數據之間的關係
原创 有關skmultilearn.ensemble導入失敗的問題
提示python 格式錯誤 估計是作者寫源碼時的漏洞報錯位置是fixed.py中紅框位置找到源碼中的fixed.py 修改源碼 將y.shape[1]手寫一遍 再次導入就沒有問題了
原创 歸併排序、快速排序、二路快排、三路快排python實現
源代碼:https://github.com/lzneu/Algrithm_pythonO(n*logn)級別的排序:|-歸併排序 分成log(n)個層級 每個層級進行O(n)排序 每次歸併時
原创 基礎排序算法(冒泡排序、選擇排序、插入排序、希爾排序 )python實現
基礎排序筆記:|-爲什麼要學習O(n^2)的排序算法 基礎 編碼簡單易於實現 在一些特殊的情況下 簡單的排序算法更有效 簡單的排序思想衍生出複雜的排序算法 作爲子過程 改進更復