梧桐下的四叶草 2015-01-16 03:31 采纳率: 33.3%
浏览 1657
已采纳

oj 题聪明的员工怎么做?

题目描述
小新是一家公司的员工,每个员工都有一个编号。每天上班时,老板都让员工排成一个队伍。但是,每次老板都对队伍的顺序不满意,于是老板重新编排新的队伍顺序,然后让员工按顺序排好。老板有特别要求,队伍每次只能将其中一个人移动到队头。聪明的小新很快想到最少移动次数使得队伍的顺序跟老板指定的顺序一样。愚蠢的老板不清楚小新是怎么做到的,聪明的你编写程序告诉ta。

输入
第一行是T(T<=10),代表数据的组数。
对于每组数据,第1行是一个整数n(2<=n<=30),代表员工的数量。第2行有n个数,代表员工一开始的队伍顺序的编号。第3行有n个数,代表老板要求的队伍顺序的编号。员工的编号为s(1<=s<=n),且不会重复。

输出
输出最少的移动次数。

样例输入
2
4
2 1 3 4
1 2 3 4
3
2 1 3
3 1 2
样例输出
1
2

  • 写回答

6条回答 默认 最新

  • 业余草 科技数码领域优质创作者 2015-01-16 04:31
    关注

    书本上都有的选择排序。

     public class ChoiceSort {
    
        public static void _choiceSort(Integer[] a) {
            if (a == null || a.length <= 0) {
                return;
            }
            for (int i = 0; i < a.length; i++) {
                int min = i; /* 将当前下标定义为最小值下标 */
    
                for (int j = i + 1; j < a.length; j++) {
                    if (a[min] > a[j]) { /* 如果有小于当前最小值的关键字 */
                        min = j; /* 将此关键字的下标赋值给min */
                    }
                }
                if (i != min) {/* 若min不等于i,说明找到最小值,交换 */
                    int tmp = a[min];
                    a[min] = a[i];
                    a[i] = tmp;
                }
            }
        }
    }
    
    
     public static void main(String[] args) {
            // TODO Auto-generated method stub
             Integer[] list={49,38,65,97,76,13,27,14,10};
             //快速排序
            /* QuicSort qs=new QuicSort();
             qs.quick(list);*/
             //冒泡排序
            /* BubbleSort bs=new BubbleSort();
             bs.bubble(list);*/
             //选择排序
             ChoiceSort._choiceSort(list);
    
             for(int i=0;i<list.length;i++){
                 System.out.print(list[i]+" ");
             }
             System.out.println();
        }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

悬赏问题

  • ¥15 微信会员卡接入微信支付商户号收款
  • ¥15 如何获取烟草零售终端数据
  • ¥15 数学建模招标中位数问题
  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 HLs设计手写数字识别程序编译通不过
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向
  • ¥15 如何用python向钉钉机器人发送可以放大的图片?