Minimum Swaps To Make Sequences Increasing LeetCode solution in Java
1class Solution {2public int minSwap(int[] nums1, int[] nums2) {3int p1 = nums1[0], p2 = nums2[0], ans = 0;4int len = nums1.length, s = 0, count = 0;5for (int i = 1; i < len; i++) {6int n1 = nums1[i], n2 = nums2[i];7if (n1 > p1 && n2 > p2) {8if (n1 > p2 && n2 > p1) {9ans += Math.min(count, i - s - count);10s = i;11count = 0;12}13p1 = n1;14p2 = n2;15} else {16count++;17p1 = n2;18p2 = n1;19}20}21return ans + Math.min(count, len - s - count);22}23}