
排序
MD_
不拼一下 你怎么知道你不会成功!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Leetcode 611. 有效三角形的个数【通过排序减少时间复杂度】
文章目录问题描述解题报告实现代码参考资料 问题描述 给定一个包含非负整数的数组,你的任务是统计其中可以组成三角形三条边的三元组个数。 示例 1: 输入: [2,2,3,4] 输出: 3 解释: 有效的组合是: 2,3,4 (使用第一个 2) 2,3,4 (使用第二个 2) 2,2,3 注意: 数组长度不超过1000。 数组里整数的范围为 [0, 1000]。 解题报告 暴力解决的时间复杂度为 O(n3)O(n^3)O(n3) 可以通过排序减少时间复杂度。 排序后,当选定两个数之后: 如果第三个数的索引边界原创 2020-07-28 11:27:22 · 259 阅读 · 0 评论 -
Leetcode 面试题45. 把数组排成最小的数
文章目录问题描述解题报告实现代码 问题描述 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。 解题报告 自定义一个排序函数 实现代码 class Solution { private: static bool cmp(string a,string b){ return a+b<b+a; } public: ...转载 2020-03-31 22:16:17 · 261 阅读 · 0 评论 -
归并排序&逆序对
实现方法一:#include <iostream> #include<cstdio> #define maxn 10000 int aa[maxn]; using namespace std; int n;void Merge(int *A,int *B,int s,int m,int n) { int j,k; for(k=s,j=m+1; s<=m&&j<=n; k++)原创 2017-03-11 16:46:13 · 278 阅读 · 0 评论 -
排序方法总结
插入排序 基本操作是:将一个记录插入到已排好序的有序表中,从而得到一个新的、记录数增1的有序表 #include <iostream> #include<stdio.h> using namespace std; #define maxn 105 int a[maxn]; void Swap( int *a, int *b ) { int t = *a; ...原创 2019-04-17 12:10:20 · 363 阅读 · 0 评论