算法与数据结构
hlinghoney
IT界小小码农一个
展开
-
js代码片段【数制转换】【判断回文】
数制之间的相互转换(适用于以2~9为基数的情况) 可以利用栈将一个数字从一种数制转换成另一种转换算法如下: 1.最高位为n%b,将此位压入栈; 2.使用n/b代替n; 3.重复步骤1和2,直到n=0且没有余数; 4.持续将栈内元素弹出,直到栈为空,以此将这些元素排列,得到转换后数字的字符串形式。源码:function mulBase(num,base){ var s=new Sta原创 2016-03-17 17:48:51 · 1326 阅读 · 0 评论 -
JavaScript中栈和队列相关操作和实现
栈的介绍栈就是和列表类似的一种数据结构,数据只能在栈顶添加或者删除。栈是一种特殊的列表,栈内的元素只能通过列表的一端访问,成为栈顶。栈具有后进先出的特点,所以任何不在栈顶的元素都无法访问。后进先出(LIFO,last-in-first-out)的数据结构。对栈的操作1.对栈的两种主要操作为将一个元素压入栈和将一个元素弹出栈。 入栈:push(); 出栈:pop(); 2.预览栈顶的元素peek原创 2016-03-15 17:11:30 · 586 阅读 · 0 评论 -
JavaScript之链表操作
单链表//Node类和LList类function Node(element){ this.element=element; this.next=null;}function LList(){ this.head=new Node("head"); this.find=find; this.insert=insert; this.display=di原创 2016-03-21 10:23:59 · 3051 阅读 · 1 评论 -
机器学习笔记
前言 最近几周花了点时间学习了下今年暑假龙星计划的机器学习课程,具体的课程资料参考见附录。本课程选讲了写ML中的基本模型,同时还介绍了最近几年比较热门,比较新的算法,另外也将ML理论和实际问题结合了起来,比如将其应用在视觉上,web上的等。总之,虽然课程内容讲得不是特别细(毕竟只有那么几节课),但是内容还算比较新和比较全的。学完这些课后,收获还算不少的,至少了解到了自己哪方面的知识比较弱,下转载 2015-03-14 20:48:48 · 982 阅读 · 0 评论 -
最小二乘、极大似然、梯度下降法
百度定义:最小二乘法(又称最小平方法)是一种数学优化技术。它通过最小化误差的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。最小二乘法还可用于曲线拟合。其他一些优化问题也可通过最小化能量或最大化熵用最小二乘法来表达。极大似然估计:它是建立在极大似然原理的基础上的一个统计方法,极大似然原理的直观想法是:一个随机试验如原创 2015-03-14 21:25:14 · 6682 阅读 · 0 评论 -
微软面试--数组去重方法
题目: 实现数组去重 输入: arr数组,即需要去重的数组 输出: 返回去重后数组的长度/* 数组去重1: 重新建立一个临时数组,遍历原数组中的元素,并判断每个元素是否在新数组中出现过。若没出现过则加入,出现过,则不加入。 时间复杂度n^2,空间复杂度n @param arr 输入需要去重的数组 @return 返回去重后数组的长度 *原创 2016-07-27 22:58:35 · 788 阅读 · 0 评论