标签:: 算法

0

冒泡排序vs归并排序vs选择排序vs插入排序

今天写了几个小排序,记录下来,都是比较简单的。 归并排序归并排序的思想是分治,我们先来看下分治的思想。 分治:分而治之。就是把一个复杂的问题分成两个或者更多的相同的货相似的子问题,再把子问题分成更小的子问题。一直到最后子问题可以简单的直接求解。原问题的解即为子问题的合并。 比如快速排序,归并排序,傅里叶变换都是利用的分而治之的思想。 分治的策略是: 对于一个规模为n的问题,若该问题可以容易的

0

HASH 哈希

生活中的hash应用安全领域的hash值比如计算机的登陆密码,一般是一串字符。然而,为了安全起见,计算机不会直接保存该字符串,而是保存该字符串的hash值(使用MD5、SHA或者其他算法作为hash函数)。当用户下次登陆的时候,输入密码字符串。如果该密码字符串的hash值与保存的hash值一致,那么就认为用户输入了正确的密码。这样,就算黑客闯入了数据库中的密码记录,他能看到的也只是密码的hash

0

今日算法小练习,排序与查找

从小做起,以后每天定时写几个js算法,并且做总结打卡。今天写了几个简单的排序和查找,还买了一本书,《算法导论》,接下来的2个月的目标就是它啦,加油。 快速排序快速排序的思想是分治,比如这里[3,4,1,5,6,9]这样一个数组,先选一个轴,比如说是起点,然后先从右向左找到比这个轴小的数,并把这个小数覆盖掉轴的位置。这时候原来小数的位置可以当成是空,然后再以轴为中心从左往右找,找到比轴大的数,再把