返回 课程
信奥AC之路-3级
0% 完成
0/0 步骤
-
第一课:数组基础4 主题|小节
-
第二课:数组基础二6 主题|小节
-
第三课:数组基础三6 主题|小节
-
第四课:数组基础四7 主题|小节
-
第五课:数组基础五5 主题|小节
-
第六课:数组用于统计,去重,排序5 主题|小节
-
第七课:冒泡排序6 主题|小节
-
第八课:数组连续性元素6 主题|小节
-
第九课:数组综合一7 主题|小节
-
第十课:字符数组7 主题|小节
-
第十一课:字符数组基础应用5 主题|小节
-
第十二课:字符数组基础应用二6 主题|小节
-
第十三课:字符数组进阶6 主题|小节
-
第十四课:字符串进阶二6 主题|小节
-
第十五课:字符串(STL)9 主题|小节
-
第十六课:字符串基础6 主题|小节
-
第十七课:字符串函数6 主题|小节
-
第十八课:字符串函数二4 主题|小节
-
第十九课:sort函数7 主题|小节
-
第二十课:字符串进阶7 主题|小节
-
第二十一课:字符串进阶二6 主题|小节
-
第二十二课:进制转换--十进制转其他进制5 主题|小节
-
第二十三课:进制转换--其他进制转十进制5 主题|小节
-
第二十四课:二进制,八进制,十六进制转换5 主题|小节
-
第二十五课:数据编码基础6 主题|小节
-
第二十六课:位运算基础6 主题|小节
课 进展
0% 完成
“除了字符串,我们还经常需要对数组进行排序,”我继续解释,”让我们看看数组排序的基本用法。”
19.4.1 数组排序和地址概念
#include<bits/stdc++.h>
using namespace std;
int main(){
int a[10] = {5, 2, 1, 3, 9, 7, 8, 6, 3, 0};
// 数组名的本质是数组在内存中的地址
cout << a << endl; // 数组首地址
cout << &a << endl; // 数组地址
cout << &a[0] << endl; // 第一个元素地址
cout << (a+1) << endl; // 第二个元素地址
cout << &a[1] << endl; // 第二个元素地址
// 对数组进行升序排序
sort(a, a+10);
for(int i = 0; i < 10; i++){
cout << a[i] << " ";
}
cout << endl;
// 对数组进行降序排序
sort(a, a+10, greater<int>());
for(int i = 0; i < 10; i++){
cout << a[i] << " ";
}
cout << endl;
// 反转数组
reverse(a, a+10);
for(int i = 0; i < 10; i++){
cout << a[i] << " ";
}
return 0;
}
算法解析:
- 数组名a代表数组首地址,a+10表示第10个元素后的位置
sort(a, a+10)
– 对数组前10个元素升序排序sort(a, a+10, greater<int>())
– 降序排序reverse(a, a+10)
– 直接反转数组元素顺序