ソースを参照

Adding solution for 169

Vinicius Teshima 1 ヶ月 前
コミット
ec750404b5
1 ファイル変更29 行追加0 行削除
  1. 29 0
      TypeScript/169.ts

+ 29 - 0
TypeScript/169.ts

@@ -0,0 +1,29 @@
+// 169. Majority Element
+
+function majorityElement(nums: number[]): number {
+    var ns: number = nums.length;
+    var ns_half: number = ns / 2;
+
+    nums.sort((a, b) => a - b);
+
+    var count: number = 0;
+    var ln: number = nums[0];
+    for ( var i = 0; i < ns; ++i ) {
+        if ( ln != nums[i] ) { count = 0; }
+        ln = nums[i];
+        ++count;
+        if ( count > ns_half ) { return ln; }
+    }
+    return -1;
+};
+
+function main() {
+    function r(n: number[], exp: number) {
+        console.log(`majorityElement(${n}) = ${majorityElement(n)} | exp: ${exp}`)
+    }
+
+    r([3,2,3], 3)
+    r([2,2,1,1,1,2,2], 2)
+}
+
+main()