js算法1

二维数组搜索与字符串替换
本文介绍了两种实用的JavaScript算法:一种是在特定条件下的二维数组中查找目标元素;另一种是将字符串中的空格替换为“%20”。通过具体实例展示了这两种算法的实现方式。

今天看了下算法 先来两个开开胃

  1. 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 相信大家在网上看到过

    思路 从左下角 第一列 最后一行开始找 小于向上找 大于向后找

    var arr = [[2,3,7,10],[5,8,13,15],[11,16,17,18],[12,19,20,25],[35,36,37,38]] 
    console.log(arr)  //[Array(4),Array(4), Array(4), Array(4), Array(4)]
    //这样一个二维数组
    function Search(target, arr) {
     //二维数组是有行跟列的
     var rownum = arr.length //行数 5
     var colnum = arr[0].length //列数 4
    
     var ri = rownum-1
     var ci = 0    //坐下角  是第4(ri)行第0(ci)列
     while(ri>=0 &&ci<=colnum-1) {  
         if(target>arr[ri][ci]) {
             ci++
         } else if(target<arr[ri][ci]) {
             ri--
         } else {
            return console.log('在')
         }
     }
     return console.log('不在')
    }
    Search(16, arr) //在
    Search(100, arr) //不在复制代码
  2. 请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 这个题目估计大家也都见过

var str = 'We Are Happy'
// 这道题最简单的解法就是使用正则来表达  
function strtrim(str) {
    return str.replace(/\s/g, '%20') //\s 匹配空白字符

}
console.log(strtrim(str))复制代码

js算法2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值