亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

分享兩道大廠前端面試題

whjin / 917人閱讀

摘要:示例輸入輸出示例輸入輸出第一種方法滑動(dòng)窗口解法滑動(dòng)窗口兩個(gè)邊界情況第二種方法位運(yùn)算解法位運(yùn)算頭條財(cái)經(jīng)部門(mén)一面二維數(shù)組的回形遍歷這是頭條財(cái)經(jīng)部門(mén)一面的一道題記住遍歷過(guò)的索引更多前端算法題,參見(jiàn)算法倉(cāng)庫(kù)。

1. 百度百家號(hào)一面

面完回來(lái)搜素,才發(fā)現(xiàn)這道題其實(shí)是LeetCode540。

540 medium 有序數(shù)組中的單一元素

給定一個(gè)只包含整數(shù)的有序數(shù)組,每個(gè)元素都會(huì)出現(xiàn)兩次,唯有一個(gè)數(shù)只會(huì)出現(xiàn)一次,找出這個(gè)數(shù)。

示例 1:
輸入: [1,1,2,3,3,4,4,8,8]
輸出: 2

示例 2:
輸入: [3,3,7,7,10,11,11]
輸出: 10

第一種方法:滑動(dòng)窗口
/**
 * 解法1:滑動(dòng)窗口
 * @param {number[]} nums
 * @return {number}
 */
var singleNonDuplicate = function(nums) {
    for (let i = 0; i < nums.length; i++){
        // 兩個(gè)邊界情況
        if (i === 0 && nums[i]!==nums[i+1])return nums[i];
        if (i === nums.length - 1 && nums[i]!==nums[i-1])return nums[i];

        if (nums[i] !== nums[i+1] && nums[i] !== nums[i-1]){
            return nums[i]
        }
    }

};
第二種方法:位運(yùn)算
/**
 * 解法2:位運(yùn)算
 * @param {number[]} nums
 * @return {number}
 */
var singleNonDuplicate2 = function(nums) {
    let a = nums[0]
    for (let i = 1; i < nums.length; i++){
        a = a ^ nums[i]
    }
    return a;
};
頭條財(cái)經(jīng)部門(mén)一面

二維數(shù)組的回形遍歷

// 這是頭條財(cái)經(jīng)部門(mén)一面的一道題

let arr2 = [
    [1,2,3,4],
    [5,6,7,8],
    [9,10,11,12]
]

let fn = (arr) => {
    let rowNumber = arr.length;
    let colNumber = arr[0].length;


    let printArr = [arr[0][0]];
    let rowIndex = 0;
    let colIndex = 0;
    let moveDirection = "down";
    let hash = {"00": true}; // 記住遍歷過(guò)的索引
    let total = rowNumber * colNumber - 1;
    while(total > 0){
        if (moveDirection === "down"){
            if (rowIndex === rowNumber - 1){
                moveDirection = "right"
                continue;
            } else if (hash[rowIndex + 1 + "" + colIndex]){
                moveDirection = "right"
                continue;
            }
            rowIndex++;

        } else if (moveDirection === "right") {
            if (colIndex === colNumber - 1){
                moveDirection = "up"
                continue;
            } else if (hash[rowIndex + "" + (colIndex + 1)]){
                moveDirection = "up"
                continue;
            }
            colIndex++;

        } else if (moveDirection === "up"){
            if (rowIndex === 0){
                moveDirection = "left"
                continue;
            } else if (hash[rowIndex - 1 + "" + colIndex]){
                moveDirection = "left"
                continue;
            }
            rowIndex--;

        } else if (moveDirection === "left"){
            if (colIndex === 0){
                moveDirection = "down"
                continue;
            } else if (hash[rowIndex + "" + (colIndex - 1)]){
                moveDirection = "down"
                continue;
            }
            colIndex--;
        }

        printArr.push(arr[rowIndex][colIndex]);
        hash[rowIndex + "" + colIndex] = true;

        total--;
    }

    return printArr;
}
console.log(fn(arr2));

更多前端算法題,參見(jiàn)LeetCode算法倉(cāng)庫(kù)。
GitHub:https://github.com/cunzaizhuy...
歡迎star?。?!
這里有60多道已經(jīng)提交通過(guò)的LeetCode題目,每天都在更新~~~

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/110001.html

相關(guān)文章

  • 【周刊-2】三年大廠面試官-前端面試(偏難)

    摘要:前言在大廠工作了年,當(dāng)了年的前端面試官,把大廠常問(wèn)的面試題與答案匯總在我的中。第題如何劫持的請(qǐng)求,提供思路難度阿里騰訊很多人在上搜索前端面試詳解,把答案倒背如流,但是問(wèn)到如何劫持請(qǐng)求的時(shí)候就一臉懵逼,是因?yàn)檫€是停留在理論性階段。前言 在大廠工作了6年,當(dāng)了3年的前端面試官,把大廠常問(wèn)的面試題與答案匯總在我的Github中。希望對(duì)大家有所幫助,助力大家進(jìn)入自己理想的企業(yè)。 項(xiàng)目地址是:git...

    silvertheo 評(píng)論0 收藏0
  • 【周刊-2】三年大廠面試官-前端面試(偏難)

    摘要:前言在大廠工作了年,當(dāng)了年的前端面試官,把大廠常問(wèn)的面試題與答案匯總在我的中。第題如何劫持的請(qǐng)求,提供思路難度阿里騰訊很多人在上搜索前端面試詳解,把答案倒背如流,但是問(wèn)到如何劫持請(qǐng)求的時(shí)候就一臉懵逼,是因?yàn)檫€是停留在理論性階段。 前言 在大廠工作了6年,當(dāng)了3年的前端面試官,把大廠常問(wèn)的面試題與答案匯總在我的Github中。希望對(duì)大家有所幫助,助力大家進(jìn)入自己理想的企業(yè)。 項(xiàng)目地址是:...

    madthumb 評(píng)論0 收藏0
  • 【周刊-2】三年大廠面試官-前端面試(偏難)

    摘要:前言在大廠工作了年,當(dāng)了年的前端面試官,把大廠常問(wèn)的面試題與答案匯總在我的中。第題如何劫持的請(qǐng)求,提供思路難度阿里騰訊很多人在上搜索前端面試詳解,把答案倒背如流,但是問(wèn)到如何劫持請(qǐng)求的時(shí)候就一臉懵逼,是因?yàn)檫€是停留在理論性階段。 前言 在大廠工作了6年,當(dāng)了3年的前端面試官,把大廠常問(wèn)的面試題與答案匯總在我的Github中。希望對(duì)大家有所幫助,助力大家進(jìn)入自己理想的企業(yè)。 項(xiàng)目地址是:...

    joywek 評(píng)論0 收藏0
  • 字節(jié)跳動(dòng)Python后端開(kāi)發(fā)崗,已拿offer

    摘要:今年歲,畢業(yè)之后進(jìn)入一家小型的互聯(lián)網(wǎng)公司工作,名字就不說(shuō)了,算是熟知的,在這家公司呆了兩年,直至今年才有了跳槽的想法。在眾多大廠中,最終選擇了字節(jié)跳動(dòng)。這樣的調(diào)整,一方面對(duì)自己學(xué)習(xí)有幫助,另一方面讓自己應(yīng)對(duì)面試更從容,更順利。 ...

    JasonZhang 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<