雜湊工具主方法

2021-06-09 12:37:01 字數 1042 閱讀 6270

#!/usr/bin/env python

# encoding: utf-8

"""tool.py

create at 12-9-5 by administrator

"""import os

import hashlib

import json

def main(assets_dir, target_dir):

"""雜湊工具主方法

"""resource_config = {}

for root, dirs, files in os.walk(assets_dir):

if root.find('.svn') == -1:

for file in files:

name, ext = os.path.splitext(file)

file_name = '%s/%s' % (root, file)·

fr = open(file_name, 'rb')

context = fr.read()

hash_name = hashlib.md5(context + file_name).hexdigest()

if not os.path.exists(target_dir):

os.makedirs(target_dir)

fw = open('%s/%s%s' % (target_dir, hash_name, ext), 'wb')

fw.write(context)

resource_config[file_name] = '%s/%s%s' % (target_dir, hash_name, ext)

fr.close()

fw.close()

f = open('resource_config.json', 'w')

f.write(json.dumps(resource_config))

f.close()

if __name__ == '__main__':

main('assets', 'target_folder')

主定理(主方法)求解遞迴式

用主方法求解遞迴式有條件,必須要求遞迴式為以下形式 其中a 1,b 1,f n 漸進趨正,意為對足夠大的n,f n 是正的,即n n 0n 0 n0 時,f n 0。其中 n為問題規模,a為遞推的子問題數量,n b 為每個子問題的規模 假設每個子問題的規模基本一樣 f n 為遞推以外進行的計算工作。...

主方法(master公式)

最近經常碰到主方法的使用,今天再這裡做乙個記錄。有些演算法在處理乙個較大規模的問題時,往往會把問題拆分成幾個子問題,對其中的乙個或多個問題遞迴地處理,並在分治之前或之後進行一些預處理 彙總處理。這時候我們可以得到關於這個演算法複雜度的乙個遞推方程,求解此方程便能得到演算法的複雜度。主方法master...

雜湊演算法之雜湊位址取值方法

直接定址法 這個類似於資料庫的關鍵字,比如有乙個是people表,表中以年齡為關鍵字可以查到對應的人口數目 數字分析法 通過統計分析得出的乙個結果,比如對手機號進行儲存,130 x1234,130營運商,x是所屬地,1234直接使用者編號,所以分析得出我們可以通過手機後4位進行雜湊位址 平方取中法 ...