LeetCode 912. 排序数组【模板题】
912. 排序数组
【快排】
class Solution {// 快速排序 7:32 13void quickSort(int[] nums, int l, int r){if(l >= r) return;int i = l, j = r, pivot = nums[l + r >>> 1];while(i <= j){while(nums[j] > pivot) j--;while(nums[i] < pivot) i++;if(i <= j){int t = nums[i];nums[i] = nums[j];nums[j] = t;j--; i++;}}quickSort(nums, l, j);quickSort(nums, i, r);}public int[] sortArray(int[] nums) {quickSort(nums, 0, nums.length - 1);return nums;}
}
【快排2】
class Solution {// 7:52 3void quickSort(int[] arr, int l, int r){if(l >= r) return;int i = l, j = r, pivot = arr[l];while(i < j){while(i < j && arr[j] > pivot) j--;arr[i] = arr[j];while(i < j && arr[i] <= pivot) i++;arr[j] = arr[i];}arr[i] = pivot;quickSort(arr, l, i - 1);quickSort(arr, i + 1, r);}public int[] sortArray(int[] nums) {quickSort(nums, 0, nums.length - 1);return nums;}
}
LeetCode 912. 排序数组【模板题】相关推荐
- Leetcode 912.排序数组(Sort an Array)
Leetcode 912.排序数组 1 题目描述(Leetcode题目链接) 给定一个整数数组 nums,将该数组升序排列. 输入:[5,2,3,1] 输出:[1,2,3,5] 输入:[5,1,1 ...
- Leetcode.912 排序数组
题目链接 Leetcode.912 排序数组 mid 题目描述 给你一个整数数组 n u m s nums nums,请你将该数组升序排列. 示例 1: 输入:nums = [5,2,3,1] 输出: ...
- LeetCode 912. 排序数组(Java)
912. 排序数组 你一个整数数组 nums,请你将该数组升序排列. 示例 1: 输入:nums = [5,2,3,1] 输出:[1,2,3,5] 提示: 1 <= nums.length &l ...
- LeetCode[912]排序数组
难度:Medium 题目: 给你一个整数数组 nums,请你将该数组升序排列. 示例 1: 输入:nums = [5,2,3,1] 输出:[1,2,3,5] 示例 2: 输入:nums = [5,1, ...
- LeetCode 912. 排序数组(10种排序)
文章目录 1. 题目 2. 解题 2.1 插入排序 2.2 冒泡排序 2.3 选择排序 2.4 希尔排序 2.5 归并排序 2.6 快速排序 2.7 堆排序 2.8 计数排序 2.9 桶排序 2.10 ...
- 2022-4-9 Leetcode 912.排序数组
第一版,使用库函数 `class Solution {public:vector<int> sortArray(vector<int>& nums) {sort(num ...
- [leetcode] 912.排序数组
给你一个整数数组 nums,请你将该数组升序排列. 示例 1: 输入:nums = [5,2,3,1] 输出:[1,2,3,5] 示例 2: 输入:nums = [5,1,1,2,0,0] 输出:[0 ...
- LeetCode 912. 排序数组-快排(C++)
本题是华为一面手撕题目. 快排的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程 ...
- HDU1166 敌兵布阵(树状数组模板题)
敌兵布阵 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submi ...
最新文章
- MRTG教程(二):MRTG配置文件的生成工具cfgmaker(上)
- java---实现闹钟的基本功能
- GridView列值绑定
- Leetcode-88:合并两个有序数组
- SAP Spartacus - Progressive Web Applications,渐进式 Web 应用程序
- php __FILE__,__CLASS__等魔术变量,及实例
- 语言条件语序心得_教师心得:提高34岁幼儿口语表达能力的策略
- Codewars-(RegEx去除html标签)
- 寡头时代——新的希望还是?
- Django运算表达式与Q对象/F对象
- Python爬虫入门学习线路图2019最新版
- typedef使用方法
- IOS逆向-ASLR
- 不需指定的医保定点医院
- WinEdit初使用
- Spark宽窄依赖详解
- Think in java(四)枚举类enum的基本特性、构造方法与方法覆盖、Switch语句中的enum运用
- 有幸被推荐到首批Oracle YEP计划
- 程序员进阶知识点!java链表ListNode
- javacc编译原理实训报告
热门文章
- 上班摸鱼小游戏—推筒子
- ASP.Repeater控件使用
- xampp mysql5.6_xampp (php5.6)免费官方版下载-xampp v5.6.36 win32 X86下载 - QT软件园
- linux Runtime
- 大型门户网站建设需要那些技术和注意事项
- 满意度模型及其应用——客户满意度
- 翻译翻译什么TMD叫EXPLAIN
- IPhone (是iPhone系列中的第一代)
- bats指哪几家公司_用BATS测试Bash
- 计算机网络(第二版)--清华大学出版社课后习题答案