今天开始坚持写计算级课程的学习日记,关键在于督促自己,并且记录每天学习的进展。本人是计算机的小白,并且并非科班出生,这篇博客只是自用。
现在的主要精力放在学习数据结构与算法上面。今天学的hash table,关键在与对一个非常大的数组集合,记录的数组只占很少的比例,而且在处理字符串作为key是如何存储数据。可以构建一个hash函数,令key对应的函数值尽可能的不同,这样可以获得常数时间复杂度。特别的对于取p为prime且p>key,可获得一组hash function令
h = (a*key + b)(mod p)(mod m)其中a取[1,2,...,p-1], b取[0,1,...,p-1]
对于每一个key i,j有映射h(i) = h(j)的概率为(1/m)
linux中文件的分类有FHS(filesystem Hierarchy Standard)