程序31:有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中
var test=[213,134,134,84,62,11];
const num=33;
test.push(num);
test.sort(function(a,b){
for(var i=0;i<test.length-2;i++){
if(test[i]>test[i+1]){
return b-a;
}else if(test[i]<test[i+1]){
return a-b;
}
}
});
console.log(test);
结果
[ 213, 134, 134, 84, 62, 33, 11 ]
程序32:将一个数组逆序输出
var test=[213,134,134,84,62,11];
var arr=[];
for(var i=test.length-1;i>=0;i--){
arr[test.length-1-i]=test[i];
}
console.log(arr);
结果
[ 11, 62, 84, 134, 134, 213 ]
程序33:打印出杨辉三角形(打出10行)
杨辉三角第n行第m个数为c(n-1,m-1)=(n-1)!/((n-m)!*(m-1)!)
var n=10;
for(var i=1;i<=n;i++){
for(var k=1,sum1='';k<=n-i;k++){
sum1+=' ';
}
for(var j=1,sum2='';j<=i;j++){
 
sum2+=fn(i-1)/(fn(i-j)*fn(j-1))+' ';
}
console.log(sum1+sum2);
}
function fn(x){
if(x==0){
return 1;
}else{
for(var k=1,res=1;k<=x;k++){
res*=k;
}
return res;
}
}
结果
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1
1 9 36 84 126 126 84 36 9 1
程序34:输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组
var arr=[12345,-142,5326,63457,865,796];
var max=arr[0],min=arr[0];
for(var i=1;i<arr.length;i++){
if(arr[i]>max){
max=arr[i];
}
if(arr[i]<min){
min=arr[i];
}
}
arr[arr.indexOf(max,0)]=arr[0];
arr[0]=max;
arr[arr.indexOf(min,0)]=arr[arr.length-1];
arr[arr.length-1]=min;
console.log(arr);
结果
[ 63457, 796, 5326, 12345, 865, -142 ]
程序35:有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数
var n=20,m=5;
var arr=[2131,14,14,532,4369,678,346,3650,990,8567,395,757,4579,68,1234,976,7421,563,54323,754];
console.log(arr);
for(var i=1;i<=n-m;i++){
arr.push(arr[0]);
arr.splice(0,1);
}
console.log(arr);
[2131,14,14,532,4369,678,346,3650,990,8567,395,757,4579,68,1234,976,7421,563,54323,754]
[976,7421,563,54323,754,2131,14,14,532,4369,678,346,3650,990,8567,395,757,4579,68,1234]

程序员50题(JS版本)(七)的更多相关文章

  1. 程序员50题(JS版本)(三)

    程序11:判断101~200之间有多少个素数,并输出所有素数 for(var i=101,num=0;i<=200;i++){ for(var j=2;j<=i;j++){ if(i%j= ...

  2. 程序员50题(JS版本)(九)

    程序41:八进制转换为十进制 var num1=425; var num2=0; num1=num1.toString(); for(var i=num1.length-1,root=1;i>= ...

  3. 程序员50题(JS版本)(八)

    程序36:有n个人围成一圈,顺序排号.从第一个人开始报数(从1到3报数),凡报到3的人推出圈子,问最后留下的是原来第几号的那位 var n=20; var arr=[]; for(var i=0;i& ...

  4. 程序员50题(JS版本)(六)

    程序26:给一个不多于5位的正整数.要求:一.求它是几位数,二.逆序打印出各位数字. var test=456; var arr=[]; arr[0]=test%10; arr[1]=parseInt ...

  5. 程序员50题(JS版本)(五)

    程序21:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和. var arr=[]; var count=20; for(var i=0;i<= ...

  6. 程序员50题(JS版本)(四)

    程序16:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字.例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制 var s=0; var num ...

  7. 程序员50题(JS版本)(二)

    程序6:用*号输出字母C的图案 console.log(' ****'); console.log(' ***'); console.log(' **'); console.log(' *'); co ...

  8. 程序员50题(JS版本)(一)

    程序1:有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? for(var i=1,sum=0;i<=4;i++){ for(var j=1;j<=4;j++){ ...

  9. asp.net程序员初涉node.js

    之前一直听说node.js在处理网站大规模并发上十分有用,所以有一定规模的公司都在使用node.我在工作中只用过jquery,属于那种边做功能边学习的那一种.甚至连原生的js都不太会写,只是知道语法差 ...

随机推荐

  1. djiango的模板语言(template)

    老师的博客:http://www.cnblogs.com/liwenzhou/p/7931828.html 官方文档:https://docs.djangoproject.com/en/1.11/re ...

  2. 从壹开始前后端分离[.NetCore] 37 ║JWT完美实现权限与接口的动态分配

    缘起 本文已经有了对应的管理后台,地址:https://github.com/anjoy8/Blog.Admin 哈喽大家好呀!又过去一周啦,这些天小伙伴们有没有学习呀,已经有一周没有更新文章了,不过 ...

  3. 中国.NET:各地微软技术俱乐部汇总(持续更新中...)

    中国.NET:各地微软技术俱乐部汇总(持续更新中...)   本文是转载文,源地址: https://www.cnblogs.com/panchun/p/JLBList.html by ​史记微软. ...

  4. Java进阶篇 设计模式之十四 ----- 总结篇

    前言 本篇是讲述之前学习设计模式的一个总结篇,其目的是为了对这些设计模式的进行一个提炼总结,能够通过查看看此篇就可以理解一些设计模式的核心思想. 设计模式简介 什么是设计模式 设计模式是一套被反复使用 ...

  5. 痞子衡嵌入式:超级好用的可视化PyQt GUI构建工具(Qt Designer)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是PyQt GUI构建工具Qt Designer. 痞子衡开博客至今已有好几年,一直以嵌入式开发相关主题的文章为主线,偶尔穿插一些其他技术 ...

  6. web scraper 抓取网页数据的几个常见问题

    如果你想抓取数据,又懒得写代码了,可以试试 web scraper 抓取数据. 相关文章: 最简单的数据抓取教程,人人都用得上 web scraper 进阶教程,人人都用得上 如果你在使用 web s ...

  7. 判空、判等、转码的StringUtil

    目录 StringUtil类 StringUtil类 import java.io.UnsupportedEncodingException; /** * 字符串工具 */ public class ...

  8. PHP开发模式之-单例模式

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 class  Db{ private function __construct(){} private static ...

  9. [转]为什么复制构造函数的参数需要加const和引用

    [转]为什么复制构造函数的参数需要加const和引用 一.引言 1.0在解答这个问题之前,我们先跑个小程序,看下调用关系. #include <iostream> using namesp ...

  10. 一个经典的 HTTP协议详解

    1引言 HTTP是一个属于应用层的面向对象的协议,由于其简捷.快速的方式,适用于分布式超媒体信息系统.它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展.目前在WWW中使用的是HTTP/1 ...