成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

分享兩道大廠前端面試題

whjin / 868人閱讀

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

1. 百度百家號一面

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

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

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

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

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

第一種方法:滑動窗口
/**
 * 解法1:滑動窗口
 * @param {number[]} nums
 * @return {number}
 */
var singleNonDuplicate = function(nums) {
    for (let i = 0; i < nums.length; i++){
        // 兩個邊界情況
        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)部門一面

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

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

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}; // 記住遍歷過的索引
    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));

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

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

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/110001.html

相關(guān)文章

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

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

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

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

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

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

    joywek 評論0 收藏0
  • 字節(jié)跳動Python后端開發(fā)崗,已拿offer

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

    JasonZhang 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<