list创建 遍历
#include <iostream>
#include<list>
using namespace std;
int main() {
list<int> mylist;
list<int>::iterator it1;
for (int i = 0; i < 100; i++) {
mylist.push_back(i + 1);
}
for (it1 = mylist.begin(); it1 != mylist.end(); ++it1)
cout << *it1 << " ";
cout << endl;
it1 = mylist.begin();
while (it1 != mylist.end())
{
cout << *it1++<< " ";
}
正向遍历 删偶换奇加选择排序
#include <iostream>
#include<list>
using namespace std;
int main() {
list<int> mylist;
list<int>::iterator it1;
for (int i = 0; i < 100; i++) {
mylist.push_back(i + 1);
}
list<int>::reverse_iterator it2 = mylist.rbegin();
int count = 0;
for (it1 = mylist.begin(); it1 != mylist.end();) {
if (*it1 % 2 == 0) it1 = mylist.erase(it1);
else {
if (count < 25){
do { it2++; } while (*it2 % 2 == 0);
int temp = *it1;
*it1 = *it2;
*it2 = temp;
}
it1++;
count++;
}
}
cout << "删除偶节点并交换奇数节点后:" << endl;
for (it1 = mylist.begin(); it1 != mylist.end(); ++it1) {
cout << *it1 << " ";
}
cout << endl;
list<int>::iterator itr = mylist.begin();
list<int>::iterator it = mylist.begin();
for (it1 = mylist.begin(); it1 != mylist.end(); ++it1) {
for (it = itr++; it != mylist.end(); ++it) {
if (*it1 > * it) {
int tmp = *it;
*it = *it1;
*it1 = tmp;
}
}
}
cout << "排序后:" << endl;
for (it1 = mylist.begin(); it1 != mylist.end(); ++it1) {
cout << *it1 << " ";
}
return 0;
}
二维数组
#include <iostream>
using namespace std;
int main()
{
int row, clo;
cin >> row >> clo;
int** a = new int* [row];
for (int i = 0; i < row; i++)
a[i] = new int[clo];
for (int i = 0; i < row; i++)
for (int j = 0; j < clo; j++)
cin >> a[i][j];
for (int i = 0; i < row; i++) {
for (int j = 0; j < clo; j++)
cout << *(*(a + i) + j);
cout << endl;
}
for (int i = 0; i < row; i++)
delete[]a[i];
return 0;
}