Java算法--阿里真題
第一道題
來自阿里
x = {a, b, c, d}
y = {e, f, g, h}
x、y兩個(gè)小數(shù)組長(zhǎng)度都是4
如果有:a + e = b + f = c + g = d + h
那么說x和y是--個(gè)完美對(duì)
題目給定N個(gè)小數(shù)組,每個(gè)小數(shù)組長(zhǎng)度都是K
返回這N個(gè)小數(shù)組中,有多少完美對(duì)
題解:
int[][] matrix = { {1, 4, 3, 2}, {2, 5, 4, 3}, {4, 1, 2, 3} }; 案例中有兩個(gè)完美對(duì),我們可以預(yù)先對(duì)每個(gè)子數(shù)組進(jìn)行處理保存,比如 {1, 4, 3, 2}--{4-1, 3-4, 2-3}--{3, -1, -1}--{1-4, 4-3, 3-2}--{-3, 1, 1} {2, 5, 4, 3}--{5-2, 4-5, 3-4}--{3, -1, -1}--{2-5, 5-4, 4-3}--{-3, 1, 1} {4, 1, 2, 3}--{1-4, 2-1, 3-2}--{-3,1,1}--{4-1, 1-2, 2-3}--{3, -1, -1}
public static int matrix(int[][] matrix) { Map<String, Integer> context = new HashMap<>(); int result = 0; for(int[] array : matrix) { StringBuilder just = new StringBuilder(); StringBuilder back = new StringBuilder(); for(int i = 1; i < array.length; i ++) { just.append("_" + (array[i] - array[i - 1])); back.append("_" + (array
剩余60%內(nèi)容,訂閱專欄后可繼續(xù)查看/也可單篇購買
Java全新整理八股文 + 場(chǎng)景題 + 算法 精心設(shè)計(jì),面試命中率超過80% 專欄優(yōu)勢(shì): 1、問題和答案已經(jīng)整理到位,答案更專業(yè),可以直接回答,不需要額外總結(jié)! 2、場(chǎng)景題講解清晰,適用于大部分場(chǎng)景的項(xiàng)目,并且持續(xù)更新中 3、分享學(xué)習(xí)心得【知識(shí)點(diǎn)的廣度和深度,算法有哪些坑,如何準(zhǔn)備面試等等】