数组的左旋和右旋算法

这篇具有很好参考价值的文章主要介绍了数组的左旋和右旋算法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

public class Test09 {

	public static void main(String[] args) {
		//右旋 数组逆序遍历,将尾部元素,不断交换至头部
		int[] arr = {1,2,3,4,5,6,7,8};
		for(int i = arr.length-1;i>0;i--) {  //遍历一次
			arr[i] = arr[i] ^ arr[i-1];
			arr[i-1] = arr[i] ^ arr[i-1];
			arr[i] = arr[i] ^ arr[i-1];
            //int temp = arr[i];
            //arr[i] = arr[i-1];
            //arr[i-1] = temp;
		}
		System.out.println("右旋:"+Arrays.toString(arr));
		//左旋 数组顺序遍历,将头部元素,不断交换至尾部
		int[] arr1 = {1,2,3,4,5,6,7,8};
		for(int j = 0;j<arr1.length-1;j++) {   //遍历一次
			arr1[j] = arr1[j] ^ arr1[j+1];
			arr1[j+1] = arr1[j] ^ arr1[j+1];
			arr1[j] = arr1[j] ^ arr1[j+1];
		}
		System.out.println("左旋:"+Arrays.toString(arr1));
	}
}

效果图:

数组的左旋和右旋算法,算法,排序算法,java 文章来源地址https://www.toymoban.com/news/detail-831181.html

到了这里,关于数组的左旋和右旋算法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【算法训练-数组 五】【二分查找】:旋转排序数组的最小数字、旋转排序数组的指定数字

    废话不多说,喊一句号子鼓励自己:程序员永不失业,程序员走向架构!本篇Blog的主题是【数组的二分查找】,使用【数组】这个基本的数据结构来实现,这个高频题的站点是: CodeTop ,筛选条件为: 目标公司+最近一年+出现频率排序 ,由高到低的去 牛客TOP101 去找,只有两

    2024年02月09日
    浏览(50)
  • 算法练习-右旋字符串(思路+流程图+代码)

            难度:简单         分类:字符串         难度与分类由我所参与的培训课程提供,但需要注意的是,难度与分类仅供参考。以下内容均为个人笔记,旨在督促自己认真学习。         字符串的【右旋转】操作是把字符串尾部的若干个字符转移到字符串的前

    2024年01月22日
    浏览(40)
  • 【算法】算法学习二:链表 & 数组 & 选择排序

    链表和数组是常见的数据结构,用于组织和存储数据。它们在内部实现和使用方式上有一些显著的区别。 数组是一个连续的内存块,用于存储相同类型的元素。数组的每个元素通过索引访问,索引从0开始。数组的主要特点包括: 随机访问:由于数组的元素在内存中是连续存

    2024年02月06日
    浏览(79)
  • 算法__数组排序_冒泡排序&直接选择排序&快速排序

    本篇主要讲解数组排序相关的三种算法,冒泡排序,直接排序和快速排序。 在数组中依次比较相邻的两个元素,当满足左侧大于右侧时(升序排序),则两个位置的元素互换。如此重复,最终即可完成数组的排序。 依次找出数组中最小值的索引,并和数组左侧的元素进行位

    2024年02月07日
    浏览(52)
  • shell数组(包含排序算法)

    目录 一:数组定义方法 1、方法一 2、方法二 ​3、方法三 ​4、方法四  5、判断数组是否完整 (1)方法一 (2)方法二:通过脚本 二:获取数组值 1、获取数组长度  2、获取数组数据列表 3、获取数组下标列表 4、读取某下标赋值 ​5、数组遍历  6、求数组所有的数值的和

    2024年02月04日
    浏览(72)
  • Shell脚本实现数组冒泡排序等简单算法排序

    目录 一、冒泡排序 1.简介 2.基本思想 3.算法思路 4.shell脚本实现 二、选择排序 1.简介 2.基本思想 3.shell脚本实现 三、插入排序 1.算法思路 2.shell脚本实现 四、反转排序 1.作用 2.shell脚本实现 类似气泡上涌的动作,会将数据在数组中从小到大或者从大到小不断的向前移动。 冒

    2024年02月09日
    浏览(112)
  • 如何使用快速排序算法对整数数组进行就地排序?

    快速排序算法是最常用的排序算法之一,尤其是对大型列表进行排序时,大多数编程语言、库都以一种或另一种方式实现了它。在 Java 中,Arrays.sort()方法使用由 Joshua Bloch 等人编写的双枢轴 快速排序 算法对原始数据类型进行排序。这种实现为大量数据集提供了更好的性能,

    2024年02月01日
    浏览(46)
  • 【算法Hot100系列】搜索旋转排序数组

    💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老 导航 檀越剑指大厂系列:全面总

    2024年01月21日
    浏览(56)
  • C语言中数组常用的排序算法

    目录 一.C语言中数组的一些算法 1.1冒泡排序 1.2选择排序 1.3插入排序 1.4快速排序 把数据按照从小到大或从大到小 的顺序进行排列 有很多算法:冒泡排序、选择排序、插入排序、快速排序、计数排序、堆排序 ....... 常用的有四种: 1.1冒泡排序 主要思想: 总共需要比较n-1轮

    2024年02月08日
    浏览(46)
  • C语言经典算法实例3:数组元素排序

    求数组的排序 问题的描述 如下几点所示 使用rand()库函数随机生成10个1-100之间的数字。 声明数组的大小为10。 随机生成的10个数字赋值给数组。 给数组内的元素由小到大排序。 本文C语言经典算法实例的编译环境,使用的是集成开发环境:Visual Studio 2019 Visual Studio 2019官网链

    2024年02月01日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包