一排书架上摆满了书籍,需要调整书籍顺序python怎么写
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一排书架上摆满了书籍,需要调整书籍顺序python怎么写相关的知识,希望对你有一定的参考价值。
你好!一排书架上摆满了书籍,需要调整书籍顺序python怎么写如下一、永久性排序什么是永久性排序呢,之前很多方法比如针对字符串的title方法,针对列表的重复用法,改变的仅仅是显示,原对象内容并没有发生变化,接下来介绍的方法是可以改变对象本身的内容。
sort方法是对某个列表进行升序排序,本案例是对数字进行排序,文本排序是一样的。
那降序如何实现呢?增加一个参数即可!
二、临时排序
上一个分享的是永久排序,实施后改变列表排序,本方法只是改变显示的内容,列表本身顺序不做改变。
三、倒转排序列表
前面分享的不是升序就是降序排序,接下来和大家分享一下翻转或者倒转列表的排序。
本倒转排序是永久性的哦!如果想恢复,操作两次即可! 参考技术A 逆序对的定义:在一个数组A中,在i < j的情况下,有A[i] > A[j],则(i,j)就称为数组A中的一个逆序对。
输入格式
第一行输入N,表示书架排数。
第二行输入k,表示每排书架上书的数量。
之后的N*k的数组表示每本书的数字编号。
输出格式
输出按照整齐程度,对各排书架重新排序后得到的新N*k的数组。
输出共一行,具体形式参考输出样例。
注意,逆序数相同则按书架原有顺序整理。
数据范围
1≤N,k≤200,
1≤数字编号≤10000
输入样例:
1029. 整理书架
Description
二哥又要整理书架了。他整理书架的方法很简单,把书架上一排所有的书全部挪到另一排的后面。现在二哥把它整理的顺序告诉你,你来告诉他整理之后的书架是什么样子的。
Input Format
读入一个数 n≤100
,表示书架一共有n排,接下来有n行,每行有一些数字(不多于100个数),每个数字代表一本书,每一行表述这一排书架上的书。再下来有n-1个数对,数对x,y表示把第x排的书放到第y排的后面。
Output Format
输出只有一行,输出最后一排的所有书。
Sample Input
3
1 2 3
4 5
6 7
3 1
2 1
Sample Output
1 2 3 6 7 4 5
#include <iostream>
#include <stdio.h>
#include <queue>
using namespace std;
int main() {
int n;
cin>>n;
vector<queue<int> > bookrack;
for(int i=0;i<=n;i++){
queue<int> q;
char c;
int j=1;
while((c=getchar())!=‘\n‘){
if(c>=‘0‘ && c<=‘9‘){
int a;
ungetc(c,stdin);
cin>>a;
q.push(a);
}
}
bookrack.push_back(q);
}
int ope[n-1][2];
//cout<<n-1<<endl;
for(int i=0;i<n-1;i++){
int a,b;
cin>>a>>b;
ope[i][0] = a;
ope[i][1] = b;
}
for(int op = 0; op< n-1; op++){
int fr = ope[op][0], to = ope[op][1];
while(!bookrack[fr].empty()){
bookrack[to].push(bookrack[fr].front());
bookrack[fr].pop();
}
}
for(int i = 0; i<bookrack.size();i++){
while(!bookrack[i].empty()){
cout<<bookrack[i].front()<<" ";
bookrack[i].pop();
}
}
return 0;
}
以上是关于一排书架上摆满了书籍,需要调整书籍顺序python怎么写的主要内容,如果未能解决你的问题,请参考以下文章
全栈项目|小书架|服务器端-NodeJS+Koa2 实现书籍详情接口