【校招】java岗位笔试准备


0-100排序

public class shunxu {
    public static void main(String[] args) {
        int arr[] = new int[11];
        Random r=new Random();
        for(int i=0;i<10;i++){
            arr[i]=r.nextInt(100)+1;//得到10个100以内的整数
        }
        Arrays.sort(arr);
        for(int i=0;i<arr.length;i++){
            System.out.print(arr[i]+"\t");
        }
    }
}

把一个数组中的0全部移到数组最前面

public class yidong {
    public static void main(String[] args) {
        int [] nums={1,2,0,1};
        int j=0;
        for (int i=nums.length-1;i>=0;i--){
            if (nums[i]==0){
                j++;
            }else {
                nums[i+j]=nums[i];
            }
        }
        for (int b =0;b<j;b++){
            nums[b]=0;
        }
        System.out.println(Arrays.toString(nums));
    }
}

把一个数组中的0全部移到数组最后面

public class yidong {
    public static void main(String[] args) {
        int [] nums={1,2,0,1};
        int i=0,zero=0;
        while (i<nums.length){
            if (nums[i]==0){
                zero++;
            }else{
                nums[i-zero] =nums[i];
            }
            i++;
        }
        int temp=nums.length -zero;
        for (int j =0;j<zero;j++){
            nums[temp++]=0;
        }
        System.out.println(Arrays.toString(nums));
    }
}

给定数组长度2n,分成n对,求n对最小元素之和最大

例如 (a1, b1), (a2, b2), …, (an, bn) ,使得从1 到 n 的 min(ai, bi) 总和最大。

示例 1:
    输入: [1,4,3,2]   输出: 4   解释: n 等于 2, 最大总和为 4 = min(1, 2) + min(3, 4).   提示:
    n 是正整数,范围在 [1, 10000].数组中的元素范围在 [-10000, 10000].

public int arrayPairSum(int[] nums) {
        int min = 0;
     //调用Arrays方法,进行升序排序
        Arrays.sort(nums);
        for(int i = 0;i<nums.length;i += 2) min += nums[i]; 
        return min;
    }

判断奇偶

package biji;
 
import java.util.Scanner;
 
public class demo18 {
    public static void main(String [] agrs){
        Scanner input = new Scanner(System.in);
        System.out.println("请输入一个数:");
        int num = input.nextInt();
        String result = (num%2==0)?"偶数":"奇数";
        System.out.println(result);
    }
 
}

java岗位笔试准备部分的记录就先到这!接下来,是一些整理的c++要点概要!

额外补充

三种权限特点

  • private: 类内可见, 子类不可见, 类内不写访问修饰符, 默认是 private;
  • protected: 类内以及子类可见;
  • public: 类外可见, C++的结构体默认是 public。

编译特点

  • 预处理命令行可以出现在源程序的任何位置上。
  • 源程序的一行上只能出现一条预处理命令。
  • 宏名只要是符合要求的标识符都可以, 没有规定一定要大写。
  • 宏替换在程序编译时, 就由编译程序对出现的宏名进行了相应的宏替换, 因此宏替换不占用程序的运行时间。

虚函数

  • 友元函数不能是虚函数, 因为友元函数不可以继承, 对于没有继承特性的函数, 因而是没有虚函数。 但是虚函数可以是另一个类的友元函数, 但不能是静态成员函数;
  • 如果一个类有纯虚函数, 则该类称为抽象类, 是不能实例化的。 所以派生类要实例化, 必须对纯虚函数进行实现;
  • 基类中说明了虚函数后, 派生类中对应的函数也默认是虚函数, 可以不用加 virtual 进行说明, 为增强可读性, 通常在派生类中也加入 virtual 关键字。

指针与引用的区分

  1. 指针是一个变量, 只不过这个变量存储的是一个地址, 指向内存的一个存储单元; 而引用跟原来的变量实质上是同一个东西, 只不过是原变量的一个别名而已。 引用没有自己的内存空间, 但指针有自己的内存空间
  2. 指针的值可以为空, 也可能指向一个不确定的内存空间, 但是引用的值不能为空, 并且引用在定义的时候必须初始化为特定对象; (因此引用更安全)。
    即: 空值 NULL 不能引用, 而指针可以指向 NULL引用必须在声明时初始化, 而指针不用
  3. 引用声明后, 引用的对象不可改变, 对象的值可以改变, 指针可以随时改变指向的对象以及对象的值。
  4. 指针和引用的自增(++)运算意义不一样。

文件打开形式设定

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

傻傻虎虎

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值