556 下乙個更大元素 III

2022-06-26 13:21:07 字數 870 閱讀 9212

給定乙個32位正整數n,你需要找到最小的32位整數,其與n中存在的位數完全相同,並且其值大於n。如果不存在這樣的32位整數,則返回-1。

class solution 

return (int)result;

//return nextarray(array);

}public long nextarray(int array) }/*

* 如果沒找到,也就是到了最後的乙個

*/if (i == 0)

/**第二步,從後往前找乙個比array[i-1]大的第乙個數字.

*/int j;

for (j = length-1; j > i; j --) }/*

第三步,交換array[i-1],array[j]

*/int temp = array[i-1];

array[i-1] = array[j];

array[j] = temp;

/*最後一步,把i-1後面(從i-2開始至length-1)的序列反序

*/while (i < length-1)

/*反序完畢即為一次排列結束

得到的序列就是下乙個全排列

*/long result = 0;

for (int index = 0; index < array.length; index++)

return result;

}private int transfer(int n)

return arr;

}}

下乙個更大元素 III

參考 感謝!給定乙個32位正整數 n,你需要找到最小的32位整數,其與 n 中存在的位數完全相同,並且其值大於n。如果不存在這樣的32位整數,則返回 1。示例 1 輸入 12 輸出 21 示例 2 輸入 21 輸出 1 class solution int nextgreaterelement in...

leetcode 556 下乙個更大元素 III

給你乙個正整數 n 請你找出符合條件的最小整數,其由重新排列 n 中存在的每位數字組成,並且其值大於 n 如果不存在這樣的正整數,則返回 1 注意 返回的整數應當是乙個 32 位整數 如果存在滿足題意的答案,但不是 32 位整數 同樣返回 1 示例 1 輸入 n 12 輸出 21 示例 2 輸入 n...

496 下乙個更大元素

給定兩個 沒有重複元素 的陣列 nums1 和 nums2 其中nums1 是 nums2 的子集。找到 nums1 中每個元素在nums2 中的下乙個比其大的值。nums1 中數字 x 的下乙個更大元素是指 x 在 nums2 中對應位置的右邊的第乙個比 x 大的元素。如果不存在,對應位置輸出 1...