(アルゴリズム)プロフェッショナルソフトウェア(Googleインタビュー)



N個の整数を入力した場合は、入力した値をソートする必要があります.
負の整数は前に、正の整数は後ろにあるはずです.また、正の整数と負の整数の順序は変わらなければならない.

説明の入力


最初の行には整数N(5<=N<=100)が与えられ、次の行には負の数を含む整数が与えられる.数値0は入力しません.

入力例

  • [1, 2, 3, -3, -2, 5, 6, -6]
  • 出力例

  • [-3, -2, -6, 1, 2, 3, 5, 6]
  • sort()parseInt()を使うと昇順で負数に並びます.
    問題の意図はアルゴリズムでソートを実現することである.
    前の問題のように、対門を実現し、対門をソートします.
    const arr = [1, 2, 3, -3, -2, 5, 6, -6];
    // 양수와 음수의 뺼셈은 양의 정수를 반환한다
    function solution(arr) {
     for (let i = 0; i < arr.length-1; i++) {
       for (let j = 0; j < arr.length-i-1; j++) {
         if (arr[j] > 0 && arr[j+1] < 0) {
           [arr[j], arr[j+1]] = [arr[j+1], arr[j]]
         }
       }
     }
      console.log(arr);
    }
    
    console.log(solution(arr));