zoukankan      html  css  js  c++  java
  • Java小知识点学习--------数组和位运算小知识点

    位运算符

             >>>无符号右移运算符,无符号右移的规则和右移的规则同样,仅仅是在填充时,无论原来是正数还是负数都用0来补充。

    数组:

             arr1=arr2;  此时两个数组变量都会同一时候指向同样的数组,即arr2所指向的数组,假设arr2所指向的数组发生变化,则arr1和arr2都变化。

             使用Arrays.sort进行排序(使用的是快排)


    幻方矩阵:(直接给实例)

    public class magic {
    	/**
    	 * 使用多维数组打印一个n阶幻方矩阵
    	 * 矩阵的每行每列和对角线上的数据元素之和相等
    	 * n取奇数(由于对角线的和与行和列的和相等)
    	 */
    	public void mag(int n,int a[][]) //传递阶数和数组
    	{
    		int i = 0, j, k;
    		j = n / 2;
    		for (k = 1; k <= n * n; k++) 
    		{
    			a[i][j] = k;
    //			System.out.print("a["+i+"]["+j+"]="+a[i][j]+" ");
    			if (k % n == 0) 
    			{
    				i = (i + 1) % n;
    			} 
    			else 
    			{
    				i = (i - 1 + n) % n;
    				j = (j + 1) % n;
    			}
    		}
    	}
    	public static void main(String[] args) {
    		int n=3;
    		int a[][] = new int[n][n];
    		new magic().mag(n, a);
    //		System.out.println();
    		for (int i = 0; i < n; i++)
    		{
    			for (int j = 0; j <n ; j++)
    			{
    				System.out.print(a[i][j]+"	");
    			}
    			System.out.println();
    		}
    	}
    
    }
    实例结果:

    8    1    6    
    3    5    7    
    4    9    2

  • 相关阅读:
    二分 || UOJ 148 跳石头
    等边n边型
    激光样式
    n个数中选k个数和为sum
    引爆炸弹
    光盘行动
    (二分)分蛋糕问题
    总结
    个人测试
    第三次团队作业
  • 原文地址:https://www.cnblogs.com/mengfanrong/p/4347759.html
Copyright © 2011-2022 走看看