1. 程式人生 > 其它 >react-redux操作過程中,出現的問題:Uncaught ReferenceError: Cannot access ‘SET_XXXXX‘ before initialization

react-redux操作過程中,出現的問題:Uncaught ReferenceError: Cannot access ‘SET_XXXXX‘ before initialization

技術標籤:演算法演算法leetcode

故心故心故心故心小故衝啊


文章目錄


題目:在陣列中的兩個數字,如果前面一個數字大於後面的數字,則這兩個數字組成一個逆序對。輸入一個數組,求出這個陣列中的逆序對的總數。

示例 1:
輸入: [7,5,6,4]
輸出: 5

解法一:雙for暴力解法(超出時間限制)

      //計數
     var count = 0;
     //雙for迴圈(暴力解法)
for(var i =0;i<nums.length;i++){ for(var j = i+1;j<nums.length;j++){ if(nums[i]>nums[j]){ count++; } } } return count;

解法二:歸併排序(正確解法)

在歸併中並排序好了

 */
var reversePairs = function(nums) {
  let result = 0
    //歸併排序
     function
mergeSort(arr){ if(arr.length < 2) return arr let len = arr.length let mid = Math.floor(len/2) return merge(mergeSort(arr.slice(0, mid)), mergeSort(arr.slice(mid))) } function merge(left, right){ let res = [] //直到長度為0時 ,才不會去比較 while(left.
length && right.length){ //在排序好的左右陣列中,若是左邊第一個大於右邊第一個 if(left[0] <= right[0]){ //刪除左邊第一個 res.push(left.shift()) }else{ //若是小於 //逆陣列數量加+1,並刪除右邊第一個 result += left.length res.push(right.shift()) } } return res.concat(left, right) } mergeSort(nums) return result }