报一个阿里笔试题,楼主投递的算法实习生。
题目是给定一个数组,实现数组多次次翻转后的输出。
输入是一个从1开始到n的递增数组和翻转次数【1,3】,【2,4】,【2,5】
比如 n= 5,
最开始排列是[1,2,3,4,5]
翻转【1,3】得到【3,2,1,4,5】
翻转【2,4】得到【3,4,1,2,5】
翻转【2,5】得到【3,5,2,1,4】
最后输出【3,5,2,1,4】
题目是给定一个数组,实现数组多次次翻转后的输出。
输入是一个从1开始到n的递增数组和翻转次数【1,3】,【2,4】,【2,5】
比如 n= 5,
最开始排列是[1,2,3,4,5]
翻转【1,3】得到【3,2,1,4,5】
翻转【2,4】得到【3,4,1,2,5】
翻转【2,5】得到【3,5,2,1,4】
最后输出【3,5,2,1,4】
全部评论
中间变量,翻转数组减一直接替换原数组对应下标的值,时间空间均O(1)
相关推荐