4月20日今日のアルゴリズム
6729 ワード
1.同じ数字が苦手
問題の説明
配列arr.アレイarrの各要素は、0から9の数字で構成されています.この場合、アレイarrは連続して表示される数字を1つだけ保持し、すべて削除しようとします.ただし、削除後に残数を返す場合は、アレイarr内の要素の順序を維持する必要があります.たとえば、
arr=1,3,3,0,1]の場合、[1,3,0,1]が返される.
arr=[4,4,3]の場合は[4,3]を返します.
配列arrから連続して現れる数字を削除し、残りの数を返すsolution関数を完了してください.
I/O例
arranswer[1,1,3,3,0,1,1][1,3,0,1][4,4,4,3,3][4,3]
私の答え
function solution(arr){
let newArr = []
for (let i = 0; i< arr.length; i++){
if (arr[i]!== arr[i+1]){
newArr.push(arr[i])
}
}return newArr
}
新しい配列を宣言します.配列の前の要素と後の要素が異なる場合は、新しい配列に挿入します.他人の解答
function solution(arr)
{
var answer = [];
for(var i = 0; i<arr.length; i++){
if(arr[i] == arr[i+1]){
continue;
}else{
answer.push(arr[i])
}
}
return answer;
}
=>continueを使用している場合は、説明方法は私と同じです.function solution(arr)
{
return arr.filter((val,index) => val != arr[index+1]);
}
=>filter関数の行の使用私の場合、私はいつもfor文を使う傾向があり、後でいろいろな関数を使う必要があります.
2.降順で文字列を配置する
問題の説明
文字列sに現れる文字を大から小まで順番に並べ替え、新しい文字列を返す関数と解決策を完了します.
sは英語の大文字と小文字のみからなり、大文字は小文字より小さいと見なされます.
せいげんじょうけん
strは、長さが1より大きい文字列です.
I/O例
s return
"Zbcdefg" "gfedcbZ"
function solution(s) {
return (s.split("").sort().reverse().join(""))
}
まず平屋に置いて、並べ替えて、それからひっくり返して、それからjoin!!これは満足できる草ですハハハString.prototype.split()
Array.prototype.sort()
Array.prototype.reverse()
Array.prototype.join()
Reference
この問題について(4月20日今日のアルゴリズム), 我々は、より多くの情報をここで見つけました https://velog.io/@jeongmin1625/4월-20일-오늘의-알고리즘テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol