[阿里一道笔试题]排序的交换次数

来源:互联网 发布:阴茎毛囊炎 知乎 编辑:程序博客网 时间:2024/05/17 22:11

若初始序列为gbfcdae,那么最少需要()次两两交换,才能使次序变为abcdefg。任给一个由a-g这7个字母组成的排列,最坏的情况下需要至少()次两两交换,才能使顺序变为abcdefg.

 

答案从别人那儿看的:

5;6

普遍规律为  字符个数-环的个数。每个字符向正确位置连一条单向边,求环个数就可以(自环也算)。

abcdefg

gbfcdae

可以看出b为自环;a->g->e->d->c->f->a形成一个环。最坏的情况是所有字母形成一个环。