自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 javascript 贪心算法说明

贪心算法贪心算法遵循一种近似解决问题的技术,期盼通过每个阶段的局部最优选择(当前最好的解),从而达到全局的最优(全局最优解)。顺序排序顺序或线性搜索是最基本的搜索算法。它的机制是,将每一个数据结构中的元素和我们要找的元素做比较。顺序搜索是最低效的一种搜索算法。function MinCoinChange(coins){ var coins = coins; var cache = {};

2017-09-24 19:10:33 1026

原创 javascript 搜索算法(Search)说明

搜索算法搜索算法,在我们日常写代码上,搜索是一个既熟悉又陌生的一种算法。用的很多,但认真了解却不太深刻。来介绍一下最常用搜索算法:顺序搜索和二分搜索。顺序排序顺序或线性搜索是最基本的搜索算法。它的机制是,将每一个数据结构中的元素和我们要找的元素做比较。顺序搜索是最低效的一种搜索算法。function(item){ for(var i=0;i<array.length;i++){

2017-09-24 18:48:25 1474

原创 javascript 排序(Sorting)算法与说明

排序的介绍排序是算法最常用的一种运算之一,数据记录到数据库,都需要经过排序输出到客户端上。不然乱输出不规整的数据,是难以阅读的。本文章介绍几种最常用见的排序方法:冒泡排序,选择排序,插入排序,归并排序和快速排序。冒泡排序冒泡排序是从运行时间的角度上来看,最差的一个。因为冒泡排序回比较任何两周相邻的项,如果第一个比第二个大,则交换它们。选择排序选择排序的思路是找到数据结构中的最小值并将其放置在第一位,

2017-09-19 23:53:07 489

原创 javascript 图(Graphs)算法与说明

图的介绍图是网络结构的抽象模型。图是一组由边连接的节点(或顶点)。学习图是重要的,因为任何二元关系都可以用图来表示。任何社交网络,例如Facebook、Twitter和Google plus,都可以用图来表示。飞机路线图就是图的实例之一: 图的相关术语通过下图来讲解说明: 由一条边连接在一起的顶点称为相邻顶点。比如,A和B是相邻的,A和D是相邻的,A和C是相邻的,A和E不是相邻的。 一个顶

2017-09-18 23:32:01 1022 1

原创 Sass Scss Less快速开发工具之Compass和EST介绍

前言现在预处理器已经成为前端开发一种必要的工具,为我们编写传统样式提供了极大的便利。但我在使用中,还是需要先编写很多个基础代码比如(clearfix,-webkit,-mo)等。像是不是有工具像jquery那样的工具库。来帮助我们写样式呢?答案是有的Compass(http://compass-style.org/)和EST(http://ecomfe.github.io/est/)。这两个工具是在

2017-09-18 10:15:19 1209

原创 javascript 红黑树算法与说明

红黑树的介绍红黑树是一种平衡二叉树。这种树可以进行高效的中序遍历。通过对任何一条从根到叶子的简单路径上各个节点的颜色进行约束,确保没有一条路径会比其他路径长2倍,因而是近似平衡的。所以相对于严格要求平衡的AVL树来说,它的旋转保持平衡次数较少。用于搜索时,插入删除次数多的情况下我们就用红黑树来取代AVL。广泛用在C++的STL中。如map和set都是用红黑树实现的。ES6红黑树完整实现代码:let

2017-09-17 23:33:25 1686

原创 javascript AVL树算法与说明

AVL树的介绍AVL树得名于它的发明者 G.M. Adelson-Velsky 和 E.M. Landis,他们在 1962 年的论文 “An algorithm for the organization of information” 中发表了它。AVL树是一种自平衡二叉搜索树,意思是任何一个节点左右两节点的高度之差最多为1。实际应用中,维护这种高度平衡所付出的代价比从中获得的效率收益还大,故而实

2017-09-17 23:16:13 690

原创 javascript 二叉树(Trees)算法与说明

二叉树的介绍树是一个非顺序数据结构,它对于存储需要快速查找的数据非常有用。现实例子就是公司的组织架构,总裁为树的最顶端叫根节点,各部门按照领导人区分为子树。 二叉树术语概念整个二叉树结构中,每个点叫作节点,每个节点都有父节点,而最上面的为根节点,根节点是没有父节点的。 节点另外一个属性为深度,是根据父节点有多少个来算的。 由根节点向下分的2个节点为子树,子树下面节点也是子树。 如图:

2017-09-15 23:35:51 2697

原创 javascript 散列表(Hashes)算法与说明

散列表的介绍散列算法的作用是尽可能快地在数据结果中找到一个值,通常在数据结果中获得一个值(get方法),需要遍历整个数据结构来找到它。如果使用散列函数,就知道值的具体位置,因此能够快速检索到该值。散列函数的作用是给定一个键值,然后返回值在表中的地址。现实实例,就如email记录本。键名就如用户名,值为email,然后当我们每保存一条数据的时候。通过键名用ASCII来转换成散列函数。如下图: 散列图

2017-09-14 23:21:36 843

原创 javascript 集合(set)算法与说明

集合的介绍集合是由一组无序且唯一(即不能重复)的项组成的。这个和数学的概念很相同有交集、并集和差集等。增删改查的算法:let set = new Set();set.add(1);set.values(); // [1]set.has(1);//trueset.size();//1set.add(2);set.values(); //[1, 2]set.delete(1);set.valu

2017-09-14 22:06:07 1195

原创 javascript 字典(dictionary)算法与说明

字典的介绍字典是存储不同元素(不重复元素)。在字典中,存储的是[键,值]也就是[key,value],键名就是用来查询特定元素。字典也称为映射。最简单的字典如下表格: key value Gandalf gandalf@email.com John johnsnow@email.com Tyrion tyrion@email.com字典算法实例字典实例一些操作增删改查

2017-09-13 23:37:25 3955

原创 javascript 链表(lineked lists)算法与说明

链表的介绍链表存储有序的元素集合,但不同于数组,链表中的元素在内存中并不是连续放置的。每个元素由一个存储元素本身的节点和一个指向下一个元素的引用(也称为指针或链接)组成。下图讲解:相对于传统的数组,链表的一个好处在于,添加或移除元素的时候不需要移动其他元素。然而,链表需要使用指针,因此实现链表的时候需要注意。数组的另一个细节是可以直接访问任何位置元素,而要想访问链表中间的一个元素,需要从起点(表头)

2017-09-13 00:28:13 1132

原创 javascript 队列(queue)算法与说明

队列的介绍队列是一种遵从先进先出(FIFO)先来先服务的有序的项,就是喝茶拿号模式(最前的号,最先进去)。队列在尾部添加新元素,并从顶部移除元素。最新添加的元素必须排在队列的末尾。队列算法实例1.我有三个元素John,Jack,Camila,按循序添加三个元素,就会得到下图的一个队列。 2.队列删除。let queue = new Queue()queue.enqueue('John')q

2017-09-11 00:07:27 6751

原创 javascript 栈(Stacks)算法与说明

栈的介绍栈是一种遵从后进先出(LIFO)原则的有序集合。新添加的或待删除的元素都保存在栈的末尾,称作栈顶,另一端就叫栈底。在栈里,新元素都是靠近栈顶,旧元素都接近栈底。其实就想书堆一样,新的书就放在上面。如果要拿下面的书,必须先把上面的书拿走才能,才能拿到想要的书。准照后进先出原则。 再讲解一下: 如图。有三个元素的栈,栈顶是100[2],栈底是81[0]。整个栈长度为3。 如图,删除栈的

2017-09-10 20:13:27 342

原创 关闭浏览器弹出框onbeforeunload,onunload和onunloadcancel

前言最近需要做一个阻挡用户关闭页面的功能,大概流程是当用户关闭页面,弹出“确定关闭提示”,点击“离开此页“关闭页面,点击“留在此页”关闭提示框。而当用户下次再关闭的时候不在给予提示。减少用户厌恶感。为了实现功能需要用到了onbeforeunload,onunload和onunloadcancel。 简单说明图:var text = "真的离开?"window.onbeforeunload = fu

2017-09-04 11:29:41 8983

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除