每日一道演算法題 字元交替換位拼接實現字串加密

2021-08-19 17:51:37 字數 1321 閱讀 6041

@time: 20180505

@author: [email protected]

參考:

題目大意:

從字串中依次取位置是2的倍數的字元,和位置不是2的倍數的字元,並將它們組成的字串拼接,得到乙個新的字串。實現加密

// for building the encrypted string:

// take every 2nd char from the string, then the other chars, that are not every 2nd char, and concat them as new string.

// do this n times!

// examples:

// "this is a test!", 1 -> "hsi etti sats!"

// "this is a test!", 2 -> "hsi etti sats!" -> "s et ashi tist!"

// write two methods:

// function encrypt(text, n)

// function decrypt(encryptedtext, n)

// for both methods:

// if the input-string is null or empty return exactly this value!

// if n is <= 0 then return the input text.

function

encrypt

(text, n) else else

}encryptedstr = secondchars + firstchars;

return encrypt(encryptedstr, n - 1);

}}encrypt(null, 2);

function

decrypt

(encryptedtext, n) else else

}return decrypt(decryptedstr, n - 1);

}}decrypt("el!hlo", 1);

一些測試用例:

describe("solution", function

());

});describe("solution", function

());

});describe("solution", function

());

});

每日一道演算法題

no.1 設指標變數fron t表示鏈式佇列的隊頭指標,指標變數rear表示鏈式佇列的隊尾指標,指標變數s指向將要入佇列的結點x,則入佇列的操作序列為 a.front next s front s b.s next rear rear s crear next s rear s d.s next f...

每日一道演算法題

no.1 若有 18 個元素的有序表存放在一維陣列 a 19 中,第乙個元素放 a 1 中,現進行二分查詢,則查詢 a 3 的比較序列的下標依次為 a.1,2,3 b.9,5,2,3 c.9,5,3 d.9,4,2,3 答案 d.第一次查詢,隊首為下標1,隊尾下標18,所以是 1 18 2 9 第二...

每日一道領扣演算法

給定乙個非負整數陣列,你最初位於陣列的第乙個位置。陣列中的每個元素代表你在該位置可以跳躍的最大長度。你的目標是使用最少的跳躍次數到達陣列的最後乙個位置。示例 輸入 2,3,1,1,4 輸出 2 解釋 跳到最後乙個位置的最小跳躍數是 2。從下標為 0 跳到下標為 1 的位置,跳 1 步,然後跳 3 步...