#include #include #include #include using namespace std ;typedef vector < vector > Mat ;Mat input() ;void mySort(Mat& a) ;void print(const Mat& a) ;int main(){Mat a = input() ;mySort(a) ;print(a) ;system ("PAUSE") ;return 0 ;}Mat input(){ifstream in(

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/08 07:07:28
#include #include #include #include using namespace std ;typedef vector < vector > Mat ;Mat input() ;void mySort(Mat& a) ;void print(const Mat& a) ;int main(){Mat a = input() ;mySort(a) ;print(a) ;system (

#include #include #include #include using namespace std ;typedef vector < vector > Mat ;Mat input() ;void mySort(Mat& a) ;void print(const Mat& a) ;int main(){Mat a = input() ;mySort(a) ;print(a) ;system ("PAUSE") ;return 0 ;}Mat input(){ifstream in(
#include
#include
#include
#include
using namespace std ;
typedef vector < vector > Mat ;
Mat input() ;
void mySort(Mat& a) ;
void print(const Mat& a) ;
int main()
{
Mat a = input() ;
mySort(a) ;
print(a) ;
system ("PAUSE") ;
return 0 ;
}
Mat input()
{
ifstream in("bc.txt") ;
Mat a ;
for (string s ; getline(in ,s) ;)
{
vector b ;
istringstream sin(s) ;
for (int ia ; sin >> ia ;)
b.push_back(ia) ;
a.push_back(b) ;
}
return a ;
}
void mySort(Mat& a)
{
for (int pass = 1 ; pass < a.size() ; ++pass)
for (int i = 0 ; i < a.size() - pass ; ++i)
if (a[i + 1].size() < a[i].size())
a[i].swap(a[i + 1]) ;
}
void print(const Mat& a)
{
for (int i = 0 ; i < a.size() ; ++i)
{
for (int j = 0 ; j < a[i].size() ; ++j)
cout

#include #include #include #include using namespace std ;typedef vector < vector > Mat ;Mat input() ;void mySort(Mat& a) ;void print(const Mat& a) ;int main(){Mat a = input() ;mySort(a) ;print(a) ;system ("PAUSE") ;return 0 ;}Mat input(){ifstream in(
#include
#include
#include
#include
using namespace std ;
typedef vector< vector > Mat ; //将创建一个二维int容器的类型赋给MAT,可以将这个二维容器看做一个二维数组
Mat input() ; //
void mySort(Mat& a) ; //
void print(const Mat& a) ; //函数声明
int main()
{
Mat a = input() ;
mySort(a) ;
print(a) ;
system ("PAUSE") ;
return 0 ;
}
Mat input()
{
ifstream in("bc.txt") ; //从文件名为bc的文件中读数据
Mat a ; //定义一个二维容器
for (string s ; getline(in ,s) ;) //从文件中获取行,赋给s,将指针指向下一行
{
vector b ; //定义一个int容器
istringstream sin(s) ; //将读取到的行存入一个读取数据流中
for (int ia ; sin >> ia ;) //将行中的每一个数依次赋给ia
b.push_back(ia) ; //将得到的每个数尾插进b
a.push_back(b) ; //再将b用尾插法插入到a中,此时a可以看作一个二维数组
}
return a ;
}
void mySort(Mat& a)
{
for (int pass = 1 ; pass < a.size() ; ++pass)
for (int i = 0 ; i < a.size() - pass ; ++i)
if (a[i + 1].size() < a[i].size()) //将每行根据长度进行排序,元素少的在上,元素多的在下
a[i].swap(a[i + 1]) ; //调用swap库函数进行交换
}
void print(const Mat& a) //输出.没什么可说的
{
for (int i = 0 ; i < a.size() ; ++i)
{
for (int j = 0 ; j < a[i].size() ; ++j)
cout