zoukankan
html css js c++ java
数字循环右移 解题报告
数字循环右移
题目如下:
一个数组a中存有n(>0)个整数,将每个整数循环向右移m(≥0)个位置,即将a中的数据由(a0 a1 ⋯an−1 )变换为(an−m ⋯an−1 a0 a1 ⋯an−m−1 )(最后m个数循环移至最前面的m个位置)。
我的思路:
题目明确告诉我们要将每个整数循环向右移动,所以这题可以嵌套循环,逐个移动,容易理解,但效率相对低一点。使用链表可以提高效率。解决这个问题我们需要知道用户传入数据的数量n以及移动的位数m。
方法一:
创建一个数组保存用户传入的数据,每一次循环中先将数组的最后一个数保存到临时变量里,然后逐个右移赋值,再将临时变量赋值给第一个数组元素,进行m个循环即可。
流程图如下:
方法二:
使用尾插法建立一个链表存放用户传入的数据,先连后断,先让表尾指向表头,再找到指定的位置断开并把断开后的下一个结点作为表头
核心代码如下:(建立链表部分省略)
其中m=m%n是为了减少重复循环,for循环是为了找到需要断开的结点。
至于流程图,咕wo咕bu咕hui咕hua。
查看全文
相关阅读:
【objective-c】字典快速转换为Model代码
【objective-c】类目 延展 协议
【objective-c】内存管理原则
UI基础-UI基础控件(一)
OC面向对象-OC基础早知道
我对于编程培训班的一些看法
如何为SQLSERVER查询分析器开启事务
准备在博客园常驻了
Spring学习(二)(1.Spring依赖注入的方式 2.依赖注入的类型 3.Bean的作用域 4.自动注入 5在Spring配置文件中引入属性文件6使用注解的方式 )
Springmvc的常用注解
原文地址:https://www.cnblogs.com/zxc12/p/12049360.html
最新文章
Encode Adjacent Letters
Find Minimum in Rotated Sorted Array II
String to Integer (atoi)
3Sum Closest
4Sum
3Sum
Two Sum
Longest Common Prefix
Find Minimum in Rotated Sorted Array
魔王与西蒙•弗拉格
热门文章
关于res-auto
使用Gradle构建Android工程
测试添加html
PowerBuilder调用.Net编译好的DLL
ThreadHelper
浅谈12306设计思路和算法
UI基础-UI基础控件(二)
常见错误
UI基础-改变UITabBarItem图片的颜色及文字
UI基础-富文本
Copyright © 2011-2022 走看看