首页 > 试题广场 >

排序

[编程题]排序
  • 热度指数:311877 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
给定一个长度为 n 的数组,请你编写一个函数,返回该数组按升序排序后的结果。

数据范围: ,数组中每个元素都满足
要求:时间复杂度 ,空间复杂度
进阶:时间复杂度 ,空间复杂度

注:本题数据范围允许绝大部分排序算法,请尝试多种排序算法的实现。
示例1

输入

[5,2,3,1,4]

输出

[1,2,3,4,5]
示例2

输入

[5,1,6,2,5]

输出

[1,2,5,5,6]
头像 LifelongCode
发表于 2021-01-10 19:17:00
调用库函数Arrays.sort 冒泡排序BubbleSort 快速排序QuickSort 归并排序MergeSort 堆排序HeapSort 优先级队列PriorityQueue 解法1:调用库函数Arrays.sort import java.util.Arrays; public class 展开全文
头像 数据结构和算法
发表于 2021-03-21 22:04:17
1,快速排序 快速排序原理是首先要找到一个中枢,把小于中枢的值放到他前面,大于中枢的值放到他的右边,然后再以此方法对这两部分数据分别进行快速排序。先看一下代码 public int[] MySort(int[] arr) { quickSort(arr, 0, arr.len 展开全文
头像 初级情书
发表于 2021-03-13 00:02:15
本题虽然考察的知识点很简单,但是想要程序在规定时间内跑完并且正确的话,就必须舍弃冒泡排序、选择排序和插入排序这三种较为低级的排序算法。八大排序中还剩下很多可以用的算法,例如:希尔排序、快速排序、堆排序、基数排序、归并排序。由于基数排序可能会导致内存超标(没测试过),而且写起来比较麻烦,所以我们选择听 展开全文
头像 做错就掌嘴
发表于 2020-12-20 20:42:56
如果你想简单: import java.util.*; public class Solution { public int[] MySort (int[] arr) { Arrays.sort(arr); return arr; } }如果你想归并: imp 展开全文
头像 王清楚
发表于 2021-08-13 11:11:03
选择排序c++ class Solution { public: //选择排序 vector<int> MySort(vector<int>& arr) { // write code here int n = arr. 展开全文
头像 雍子狸
发表于 2022-03-18 16:26:11
冒泡排序: class Solution: def MySort(self , arr: List[int]) -> List[int]: # write code here for i in range(len(arr)): f 展开全文
头像 子夜降晴空
发表于 2021-03-09 17:13:41
class Solution { public: void quickSort(vector<int>& arr, int left, int right) { if(left >= right) // 递归中断条件 retu 展开全文
头像 不经历怎么能成长
发表于 2021-03-24 18:36:21
快速: class Solution { public: vector<int> MySort(vector<int>& arr) { // write code here quickSort(arr,0,arr.size()- 展开全文
头像 牛客671709996号
发表于 2021-09-25 10:57:00
# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # 将给定数组排序 # @param arr int整型一维数组 待排序的数组 # @return int整型一维数组 # class Solution: def MySort(self , arr ): 展开全文
头像 Jokerssj
发表于 2021-10-30 10:50:17
妈见打系列,直接使用了Arrays.sort(arr) import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * 将给定数组排序 * @p 展开全文