1.约瑟夫环实现
 //附有调试
function joseph(n,p){
var arr=[];
for(var i=0;i<n;i++){
arr.push(i);
}
debugger;
var flag=0;
var outnum=0;
while(arr.length>1){
//定义到里面 下次外层循环,数组长度已改变,定义到外面的话会死循环,浏览器卡死
var len=arr.length;
for(var i=0;i<len;i++){
flag++;
if(flag==p){
flag=0;
//自行脑补
arr.splice(i-outnum,1);
outnum++;
}
}
}
return arr[0];
}
//IE8以下不支持console.log()
if(window.console){
console.log(joseph(20,3));
}
else{
window.console={
log:function(){},
happentime:function(){}
//对象字面量方式自行构建
}
}

2.斐波那契数列实现

  1 类似数列:1,1,2,3,5,8,13,21。。。。。
2
3 function ftbn(n){
4 if(n=1||n=2){
5 return 1;
6 }
7 else
8 {
9 return ftbn(n-1)+ftbn(n-2);
10 }
11 }

3.编写insertAfter

  function insertAfter(newElement,targetElement){

                var parent=targetElement.parentNode;

                if(parent.lastChild==targetElement){

                  targetElement.appendChild(newElement);

 }

 else{

        parent.insertBefore(newElement,targetElement.nextSibling);

 }

 }

4.数组去重

 var ss=[1,2,3,3,44,55,55,77,2,3,1];
function decode2(){
var arry={};
var index=0;
var ss2=[];
var len=ss.length;
for(var i=0;i<len;i++){
if(arry[ss[i]]==undefined){ arry[ss[i]]=1;
ss2[index++]=ss[i];
}
else if(arry[ss[i]==1]){continue;}
}
return ss2
}
decode2();

5.实现一个函数,判断一个字符串内出现最多次的字符,并统计这个字符

 var  s="helloworld";
function countStr(str){
var len=str.length;
var obj={};
for(var i=0;i<len;i++){
var k=str.charAt(i);
if(obj[k]){
obj[k]++;
}
else
{
obj[k]=1;
}
}
var m=0,i=null;
for(var b in obj){
if(obj[b]>m){
m=obj[b];
i=b;
}
}
return i+":"+m;
} countStr(s);

js一些算法实现的更多相关文章

  1. js的 算法 和 数据结构

    js的 算法 1.对一个对象数组按照对象某个属性进行排序  : https://www.cnblogs.com/webcabana/p/7460038.html 在做公交的项目中就碰到过这种算法问题, ...

  2. 总结下js排序算法和乱序算法

    其实本人最怕的就是算法,大学算法课就感觉老师在讲天书,而且对于前端来说,算法在实际的应用中实在是很有限.毕竟算法要依靠大量的数据为基础才能发挥出算法的效率,就浏览器那性能,......是吧,退一万步说 ...

  3. Round() 四舍五入 js银行家算法(转)

    首先问一下round(0.825,2) 返回的结果,大家猜一猜, 首先SQL server 返回的是 0.83 js的返回结果 是0.83,code 如下: var b = 0.825;        ...

  4. 排序图解:js排序算法实现

    之前写过js实现数组去重, 今天继续研究数组: 排序算法实现. 排序是数据结构主要内容,并不限于语言主要在于思想:大学曾经用C语言研究过一段时间的排序实现, 这段时间有空用JS再将排序知识点熟悉一遍. ...

  5. 结构-行为-样式-Js排序算法之 快速排序

    快速排序算法,是我的算法系列博客中的第二个Js实现的算法,主要思路:    在一个数组中随机取一个数(一般都取第一个或者最后一个),使这个数与数组中其他数进行比较,如果比它大就放到它的右边,比它小就放 ...

  6. js排序算法汇总

    JS家的排序算法   十大经典算法排序总结对比 一张图概括: 主流排序算法概览 名词解释: n: 数据规模k:“桶”的个数In-place: 占用常数内存,不占用额外内存Out-place: 占用额外 ...

  7. JS排序算法

    1.冒泡排序 冒泡算法是比较相邻的两项,如果前者比后者大,就交换他们. 假设一共有n项,那么一共需要n-1趟,第一趟需要交换n-1次,但是第一趟结束后,最后一项基本确定就是最大项了,所以第二次需要交换 ...

  8. 常用的 JS 排序算法整理

    关于排序算法的问题可以在网上搜到一大堆,但是纯 JS 版比较零散,之前面试的时候特意整理了一遍,附带排序效率比较. //1.冒泡排序 var bubbleSort = function(arr) { ...

  9. js的算法题

    1.统计一个字符串中出现最多的字母 给出一个字符串,统计出现次数最多的字母.如:“wqeqwhixswiqhdxsq”,其中出现最多的是q. js算法的实现 function findMax(str) ...

  10. js快速排序算法解析

    数组的快速排序算法,和并归排序步骤基本类似. 都是先拆分,后合并.并归排序是:拆分容易,合并难. 快速排序是:拆分难,合并容易 要理解快速排序,首先要理解拆分逻辑 要素:找一个基准点,通过操作使得数列 ...

随机推荐

  1. 【CSS】Intermediate7:Pseudo Elements

    1.selector:pseudo element{property:value;} 2.first-letter  first-line CSS3:: 与pseudo class 区别 old br ...

  2. 使用Windows Azure创建Linux系统虚拟机-上

    创建虚拟机来运行Linux 当您在Azure管理门户中使用映像图库时,创建运行Linux的虚拟机很容易.本指南告诉您如何做到这一点,假设你没有使用过Azure. 注意: 即使你不需要使用过Azure虚 ...

  3. 改进的SMO算法

    S. S. Keerthi等人在Improvements to Platt's SMO Algorithm for SVM Classifier Design一文中提出了对SMO算法的改进,纵观SMO ...

  4. 解决 this virtual machine’s policies are too old to be run by this version of vmware workstation”

    VMWare从6.0升级到9.0,打开以前的虚拟机报错如下:“this virtual machine’s policies are too old to be run by this version ...

  5. 【原创】一个复制本地文件到Hadoop文件系统的实例

    import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net ...

  6. HDOJ-ACM1019(JAVA) 多个数的最小公倍数

    题意:求多个数的最小公倍数 很简单,但是我一开始的做法,估计会让结果越界(超过int的最大值) import java.util.*; import java.io.*; public class M ...

  7. jqGrid 设置列宽

    在jqgrid显示出来之后,需要手动调整列宽. 1. 经过调查jqgrid本身不支持指定列宽,当然这个是说的的初始化完成后. 2. 经过调查手动是可以调整列宽,所以进行了事件的查看resizestop ...

  8. 解决 Provider 'System.Data.SqlServerCe.3.5' not installed. -摘自网络

    在64位机器上开发,如果使用到SqlServerCe的话,那么很可能会碰到这个问题,问题有两个方面: 1.如提示所云,没有安装SqlServerCe,只要去微软下载就好了. 2.系统已经安装SqlSe ...

  9. web api中post参数时只能一个

    在WebAPI中,请求主体(HttpContent)只能被读取一次,不被缓存,只能向前读取的流. 举例子说明: /?id=123&name=bob void Action(int id, st ...

  10. JS 事件与事件对象小结

    JavaScript与HTML之间的交互是通过事件来实现的.IE9,chrome,Firefox,Opera,Safari均实现了DOM2级规范中定义的标准DOM事件,而IE8和IE8以下版本仍然保留 ...