[アルゴリズム]の中間文字を入力
19313 ワード
最近はアルゴリズムが多すぎるので、プログラマーレベル1から段階的に問題を解決しようとしています.
アルゴリズムを解くときは,メソッドの定理とコア解を首都コードに整理する.😆😆
abcdeはcをもたらし、qwerはweの2文字をもたらす. String.prototype.split():文字列を配列として表すことができます.文字列を分割して配列関数を使用する場合は、主にそれを使用します. Array.prototype.join():配列を文字列として表すために使用します.
MDN説明: String.prototype.substr():文字列に範囲を指定して、戻るときに使用します. Math.Ceil():指定された数値をアップロードするために使用されます. https://programmers.co.kr/learn/courses/30/lessons/12903 https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/split https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray/join https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Math/ceil https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/substr
アルゴリズムを解くときは,メソッドの定理とコア解を首都コードに整理する.😆😆
中間文字を入力
abcdeはcをもたらし、qwerはweの2文字をもたらす.
풀이 1)
function solution(s) {
let arr = s.split("");
let result = [];
for(let i =0 ; i < arr.length; i++){
if(arr.length % 2 === 0){
result.push(arr[Math.ceil(arr.length/2)-1])
result.push(arr[Math.ceil(arr.length/2)]);
return result.join("");
}
if(arr.length % 2 === 1){
return arr[Math.ceil(arr.length/2)-1];
}
}
}
풀이 2)
const solution= (s) => {
let result= [];
let odd;
let arr = s.split('');
// 홀수 일 경우
if(arr.length % 2 !== 0) {
odd = Math.ceil(arr.length / 2) - 1 ;
result.push(arr[odd]);
return result.join('');
}
// 짝수 일 경우 두 글자 반환
else{
for(let i = (arr.length / 2) - 1 ; i <= arr.length / 2; i++) {
result.push(arr[i]);
}
}
return result.join('');
}
풀이 3)
function solution(s) {
return s.substr(Math.ceil(s.length / 2) - 1, s.length % 2 === 0 ? 2 : 1);
}
const str = 'The quick brown fox jumps over the lazy dog.';
const words = str.split(' ');
console.log(words[3]);
// expected output: "fox"
const chars = str.split('');
console.log(chars[8]);
// expected output: "k"
const strCopy = str.split();
console.log(strCopy);
// expected output: Array ["The quick brown fox jumps over the lazy dog."]
MDN説明:
join()
メソッドは、配列内のすべての要素を1つの文字列に接続します.const elements = ['Fire', 'Air', 'Water'];
console.log(elements.join());
// expected output: "Fire,Air,Water"
console.log(elements.join(''));
// expected output: "FireAirWater"
console.log(elements.join('-'));
// expected output: "Fire-Air-Water"
substr()
におけるstr.substr(start[,length])の構文に注意してください.substr(a,b)
aは、開始インデックスであり、開始インデックスの長さであると考えられる.const str = 'Mozilla';
console.log(str.substr(1, 2));
// expected output: "oz"
console.log(str.substr(2));
// expected output: "zilla"
Math.ceil(.95); // 1
Math.ceil(4); // 4
Math.ceil(7.004); // 8
Math.ceil(-0.95); // -0
Math.ceil(-4); // -4
Math.ceil(-7.004); // -7
Reference
Reference
この問題について([アルゴリズム]の中間文字を入力), 我々は、より多くの情報をここで見つけました https://velog.io/@jangwonyoon/알고리즘-가운데-글자-가져오기テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol