演算法邏輯題整理 初級(1)

2021-10-25 20:25:52 字數 2222 閱讀 6997

演算法邏輯題整理-中級(1)

1.改變this指向

function bindthis(f, otarget) 

return function()

// bind 因為是返回乙個新的函式不會直接執行不用包裹乙個函式

return f.bind(otarget);

}

2.查詢兩個節點的父節點

//contains判斷指定元素內是否包含另乙個元素。即判斷另乙個dom元素是否是指定dom元素的後代

commonparentnode(onode1, onode2) else

}

3.陣列去重

let arr = [false, true,undefined, null,nan,undefined,0,[1,2],[1,2],1,{},{},"a","a",nan,];

普通陣列去重當然只能是初級,這種復合的陣列就稍微有點難度

主要分(基本型別),nan,(陣列,物件)三類處理

function commonparentnode(arr = )

} else if (objstr.indexof(str) == -1) }}

return newarr;

}

4.最長公共字首

輸入:strs = ["flower","flow","flight"]

輸出:"fl"

// 這裡雖然看到用了雙for迴圈但仔細看就明白不會出現大量消耗

var longestcommonprefix = function (strs) }}

return strs[0];

};

5.實現雙向繫結

模擬vue中將data定義的變數全部新增set,get方法達到監聽效果

var data = ;

observe(data);

function observe(data)

// 取出所有屬性遍歷

object.keys(data).foreach(function (key) );

}function definereactive(data, key, val) ,

set: function (newval) ,

});}

採用proxy**屬性比es5簡單優化更好

6.柯里化

// 案例

function curryingadd(x)

}curryingadd(1)(2)

// 執行解析

// 返回乙個匿名方法,並接受乙個引數,此時這個匿名函式拿到了x的值,

// 第二部則變成 function (2)

// 不立即輸出結果,而是返回乙個接受剩餘引數的函式,

// 通用柯里化函式

function curring(fn, arr = ) else

};}

7.同類排序演算法

//給定乙個包含紅色、白色和藍色,一共 n 個元素的陣列,原地對它們進行排序,使得相同顏色的元素相鄰,並按照紅色、白色、藍色順序排列。

此題中,我們使用整數 0、 1 和 2 分別表示紅色、白色和藍色

輸入:nums = [2,0,2,1,1,0]

輸出:[0,0,1,1,2,2]

var sortcolors = function(nums) ;

**8.給定陣列 nums1 和 nums2。請你找出並返回這兩個正序陣列的中位數 **

輸入:nums1 = [1,3], nums2 = [2]

輸出:2.00000

解釋:合併陣列 = [1,2,3] ,中位數 2

var findmediansortedarrays = function (nums1, nums2) );

let ind = math.ceil(arr.length / 2);

// 陣列元素數量為單直接取中間的元素,否則取中兩位元素的平均值

if (arr.length % 2 == 0) else

};

邏輯趣味題整理

1.五個洞排成一排,其中乙個洞裡藏有乙隻狐狸。每個夜晚,狐狸都會跳到乙個相鄰的洞裡 每個白天,你都只允許檢查其中乙個洞。怎樣才能保證狐狸最終會被抓住?2.有23枚硬幣在桌上,10枚正面朝上。蒙住你的眼睛 你無法分清正反 如何分成兩組,讓兩組硬幣正面朝上的一樣多?3.有兩組硬幣,一組100個,另一組2...

1 初級演算法題 旋轉陣列

題目 給定乙個陣列,將陣列中的元素向右移動n個位置,其中n是非負數。輸入 1,2,3,4,5,6,7 和n 3 輸出 5,6,7,1,2,3,4 向右旋轉1步 7,1,2,3,4,5,6 向右旋轉2步 6,7,1,2,3,4,5 向右旋轉3步 5,6,7,1,2,3,4 假設,給定陣列 8,7,6,...

初級演算法梳理 邏輯回歸

1 邏輯回歸與線性回歸的聯絡與區別 線性回歸模型產生的 值是實值y hat,而考慮二分類問題,輸出標記y 可以把線性回歸產生的 值y hat轉化成0 1值,找到乙個單調可微函式將分類任務的 值y hat轉化成0和1。2 邏輯回歸的原理 線性回歸模型產生的 值是實值y hat,而考慮二分類問題,輸出標...