JerryLinyong / blog

0 stars 0 forks source link

ARTS 第三周(2019.07.15-2019.07.21) #3

Open JerryLinyong opened 5 years ago

JerryLinyong commented 5 years ago

2019.07.15-2019.07.21

算法

https://leetcode-cn.com/explore/interview/card/top-interview-questions-easy/1/array/23/

/**
 * @param {number[]} nums
 * @param {number} k
 * @return {void} Do not return anything, modify nums in-place instead.
 */
var rotate = function(nums, k) {
    if(k%nums.length===0)return nums
    let moveIndex = 0
    let endIndex = (moveIndex+k)%nums.length
    let lastNum = nums[0]
    let nextNum = nums[endIndex]

    for(let i=1;i<=nums.length;i++){
        endIndex = (moveIndex+i*k)%nums.length
        nextNum = nums[endIndex]
        nums[endIndex] = lastNum
        if(endIndex===moveIndex){
            ++moveIndex
            lastNum = nums[moveIndex]
        }else{
            lastNum = nextNum
        }
    }
    return nums
};

分享(分享交流原则)

最近一次原则:回顾一天的代码,总结。询问用户的体验,总结。这是记忆最清晰,最具有可行性的参考。
鹦鹉学舌原则:在分析,倾听上总会出现一些地方不甚了解,所以这个时候就要自己重复这个模糊的环节,然后分析出各种可能,这个可以帮助更好理解。
沉默10秒原则:在回答或者询问时,都要给对方10秒中的空白,这样双方在进行一定的思考过后给出来的答案都比较完整。
不答反问原则:前提是你要有对这个问题一定的思考,而且还是真的不能完全肯定这个问题的答案才可以进行不答反问原则。要先己惑才可用。
转场衔接原则:在进入下一个环节,都要对前面的东西进行总结,才可以正常的进入下一个环节。

外文阅读

https://onezero.medium.com/what-the-1990s-microsoft-case-tell-us-about-regulating-big-tech-3286fab653e7

es6

class:通过object.creat 创造一个空对象,然后让子类的原型等于这个空对象,然后还可以传入第二个参数作为constructor的属性。
柯里化:将多个参数的函数转变成多个单个参数的函数
偏函数:不会每个参数都返回一个函数,多个参数返回一个函数