zoukankan      html  css  js  c++  java
  • js上 二十、综合案例

    二十、综合案例

    题目一:

    **1. ** 数组随机

    描述,写randomArray函数,传递一个数组,传递一个数值,返回一个指定个数的随机的新数组,不允许有重复数据

    用例:

    randomArray([

    '小明', '小红', '小绿', '小白', '小黄', '小蓝', '小黑', '小青'

    ], 3)

    结果:

    ['小红', '小白', '小明']

    **思路 ** **:获取数组的随机值: ** Math.floor(Math.random()*arr.length);

    利用循环多次随机,然后判断随机来的内容是否在新数组中存在,(indexOf判断)如果不存在,添加到新数组中,当数组的长度达到指定的长度,则不需要随机

    img

    题目二:

    2: 只出现一次的数字

    描述:给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。

    示例 1:

    输入: singleNumber( [2,2,1] )

    输出: 1

    示例 2:

    输入: singleNumber([4,1,2,1,2])

    输出: 4

    思路:判断数组的每一个元素第一次出现的位置(indexOf)和最后一次出现的位置(lastIndexOf)的位置一样(即从前往后找和从后往前找,位置一样)那说明只有一个,不一样,说明有两个

    img

    题目三:

    3,时间

    JS转换时间戳为“刚刚”、“1分钟前”、“2小时前”“1天前”等格式

    描述:类似于微信朋友圈,根据时间戳转换出(刚刚,1分钟前,1小时前,昨天,几天前,几周前,几个月前)

    var toDateFriendly = function (timestr) {}

    实例

    toDateFriendly(1564738511482) // 刚刚

    toDateFriendly((+new Date()) – 1000 * 60 ) // 1分钟前

    思路:调用时传入的是发送的时间;

    获取当前时间;

    求时间差

    然后判断时间差,如果小于1分钟,那么弹出刚刚

    如果时间差小于1小时,那么具体计算到底是多少分钟

    如果实现差小于1天,那么具体计算到底是多少小时

    否则,具体计算是多少天;

    img

    题目四:

    封装一个numberSort(nList)函数,实现如下功能:

    nList是个数字串,例如1,4,5,23,2,17,24,897。

    请把这串数字转为数组后按照中间高两边低进行排序,

    最后的结果是["1", " 4", " 5", " 23", " 897", " 24", " 17", " 2"],请注意左右翼数据数据的平衡性(左右两边的数个数一致)。

    console.log(numberSort('1, 4, 5, 23, 2, 17, 24, 897'));

    //打印结果是["1", " 4", " 5", " 23", " 897", " 24", " 17", " 2"]

    console.log(umberSort('12, 4, 0,65,30,8,19'));

    // 打印结果是[" 0", " 4", "12", "65", "30", "19", "8"]

    思路:1)数字串nList转为数组 str.split(分隔符)

    3) 判断数组长度是否为偶数

    4) 将数组一分为二,平均分成两个小数组 slice()

    5) 排序 ,

    6) 合并

    7) 先将最大数从数组中截取并删除掉

    8) 删除最大值 splice()

    9) 排序

    10) 合并

    题目

    img

    题目五:

    完成 isAnagram,接受两个字符串作为参数,返回true 或者 false 表示这两个字符串是否同字母异序。

    同字母异序指的是两个字符串字母种类和字母的数量相同,但是顺序可能不同

    例如:

    isAnagram("anagram", "nagaram") // return true.

    isAnagram("rat", "car") // return false.

    思路:

    如果两个字符串全等,说明是同字母同序

    如果两个字符排序(先转数组(split)才能用sort排序)然后转字符串(join)后全等,说明是同字母异序;

    img

    img

  • 相关阅读:
    webdav srs相关
    How To Configure WebDAV Access with Apache on Ubuntu 14.04
    ubuntu 编译lighttpd
    srs编译及推流测试
    Compile pciutils (lspci, setpci) in Windows x86,在 Windows x86 平台下编译 pciutils (lspci, setpci)
    mingw MSYS2 区别
    Qt之美(三):隐式共享
    Qt之美(二):元对象
    Qt之美(一):d指针/p指针详解
    C++的栈空间和堆空间
  • 原文地址:https://www.cnblogs.com/yzy521/p/14132719.html
Copyright © 2011-2022 走看看