随笔分类 - JaveScript
摘要:直接插入排序算法即每次循环都把后面的数据插入到比它小的数据前面。直接插入排序插入有序序列中需要从后向前挨个扫描数据,并且还要将数据向后移为新数据腾出位置,显然当数据量大的时候效率很低,直接插入排序适用数据量小的情况 <! more
阅读全文
摘要:快速排序就是通过一趟排序将原数据分成两部分,其中一部分关键字都比另一部分小,接下来再对这两部分分别使用快速排序,这里有递归的思想。快速排序的平均时间复杂度为O(nlgn),所以适合数据量较大的情况,但快排需要频繁的对数据位置的操作,故不适合链式存储数据。<! more javascript func
阅读全文
摘要:冒泡排序,几乎每个程序员都会的经典排序算法,每趟循环都找出最大的值。时间复杂度最好最坏均为O(n²)。所以冒泡适合用于数据量非常小的排序。
阅读全文
摘要:经典排序算法之堆排序 若以升序排序说明,把 "数组" 转换成 "最大堆积" (Max Heap Heap),这是一种满足最大堆积性质(Max Heap Property)的 "二叉树" :对于除了根之外的每个节点i, A[parent(i)] ≥ A[i]。 重复从最大堆积取出数值最大的结点(把根结
阅读全文
摘要:直接选择算法和冒泡有异曲同工之妙。同样适合用于数据量非常小的排序。 javascript function sortSelect(arr) { for (let i = 0; i
阅读全文
摘要:归并排序 (英语:Merge sort,或mergesort),是创建在归并操作上的一种有效的 "排序算法" , "效率" 为 ( "大O符号" )。1945年由 "约翰·冯·诺伊曼" 首次提出。该算法是采用 "分治法" (Divide and Conquer)的一个非常典型的应用,且各层分治递归可
阅读全文
摘要: 希尔排序是希尔(Donald Shell)于1959年提出的一种排序算法。希尔排序也是一种插入排序,它是简单插入排序经过改进之后的一个更高效的版本,也称为缩小增量排序,同时该算法是冲破O(n2)的第一批算法之一。希尔排序适合数据量中等情况,几十个到几万个。 网上看了好久才彻底明白希尔排序是什
阅读全文
摘要:最近想自己做一个斗地主游戏(使用cocoscreator + javascript),发现滑动选择卡牌还有一点点麻烦呢,这里把实现分享下。 1、首先封装卡牌 CardCtrl.js 卡牌的touched属性即为触摸框选标记,selected属性为触摸结束所选择卡牌的标记。其他的牌面花色什么的这里不做
阅读全文
摘要:效果图如下: SlierExp.js
阅读全文
摘要:先上个效果图: 使用cocoscreator 1.9.1 + node.js + websocket实现,没有使用socket.io, 全部自己封装,长连接进行封装后可以和短连接使用方法一样,使用简单,方便以后开发网络游戏。 1、客户端: 主要就是聊天内容的显示,自动换行和背景扩展,代码大概如下:
阅读全文
摘要:很多时候,ui上面的button都只需要单击触发一次,当用户快速连续点击时就有可能出现非意料的事情,解决这个问题很简单,只要规定button在指定间隔时间内只能触发一次就行。 将下面的代码保存为ButtonSafe.js, 只需要给每个button控件添加下面的脚本并指定间隔时间即可防止重复点击。
阅读全文
摘要:快速排序(Quicksort)是对冒泡排序的一种改进。 快速排序由C. A. R. Hoare在1962年提出。它采用了一种分治的策略,通常称其为分治法(Divide-and-ConquerMethod)。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,...
阅读全文

浙公网安备 33010602011771号