zoukankan      html  css  js  c++  java
  • Drop it

    FCC题目:队友该卖就卖,千万别舍不得。

    让我们来丢弃数组(arr)的元素,从左边开始,直到回调函数return true就停止。

    第二个参数,func,是一个函数。用来测试数组的第一个元素,如果返回fasle,就从数组中抛出该元素(注意:此时数组已被改变),继续测试数组的第一个元素,如果返回fasle,继续抛出,直到返回true。

    最后返回数组的剩余部分,如果没有剩余,就返回一个空数组。

    示例:

    drop([1, 2, 3, 4], function(n) {return n >= 3;}) 应该返回 [3, 4]。
    drop([0, 1, 0, 1], function(n) {return n === 1;}) 应该返回 [1, 0, 1]。
    drop([1, 2, 3], function(n) {return n > 0;}) 应该返回 [1, 2, 3]。
    drop([1, 2, 3, 4], function(n) {return n > 5;}) 应该返回 []。
    drop([1, 2, 3, 7, 4], function(n) {return n > 3;}) 应该返回 [7, 4]。
    drop([1, 2, 3, 9, 2], function(n) {return n > 2;}) 应该返回 [3, 9, 2]。

    步骤:

    1 function drop(arr, func) {
    2   while(!func(arr[0]) && arr.length > 0){
    3     arr.shift();
    4   }
    5   return arr;
    6 }
    7 
    8 drop([0, 1, 0, 1], function(n) {return n === 1;}) ;
     1 function drop(arr, func) {
     2   // Drop them elements.
     3   for(var i=0;i<arr.length;i++){
     4     if(func(arr[i])===false)
     5       arr.splice(i,1,'false');
     6     else break;
     7   }  
     8   return arr.filter(function(vl){
     9     return vl!=="false";
    10   });  
    11 }
    12 
    13 
    14 drop([0, 1, 0, 1], function(n) {return n === 1;}) ;
  • 相关阅读:
    c++ tinyxml
    fmod简单播放mp3
    D3DXVec3TransformCoord 函数 D3DXVec3TransformNormal 函数
    D3DXMATRIX
    OpenGL FBO
    Opengl Freeimage 保存屏幕像素到图片
    fmod播放mp3 vs2010测试通过
    Hermite与Bezier曲线绘制方法研究
    D3DXVECTOR3
    c++ windows下创建文件夹和删除文件夹
  • 原文地址:https://www.cnblogs.com/lilicat/p/6256519.html
Copyright © 2011-2022 走看看