<Zhuuu_ZZ>一维数组及基本排序算法

本文介绍了如何定义和操作一维数组,包括在Java中通过不同方式初始化数组,并展示了增强for循环的使用。接着,文章讲解了计算数组中数值的平均值、最大值和最小值的方法,以及在数组范围内进行增删改查的操作。此外,文章重点讨论了基本排序算法,如选择排序和插入排序的工作原理,并提供了相应的实现示例。

# 一维数组及基本排序算法


一.数组基本运算
1.理解数组
数组--------线性表
数组是一个变量(引用类型),存储相同数据类型的一组数据
数组长度固定不变,避免数组越界
在这里插入图片描述
从上图可以看出:声明一个变量是在内存空间划出一块合适的空间,而声明一个数组是在内存空间划出一串连续的空间。

2.定义数组,分配空间与赋值
最方便的操作就是在定义的同时赋值:
比如 int scores[]=new int[]{80,78,46,43,33};
或者 int scores[]={80,78,46,43,33};

还有一个操作是增强for循环:
public static void main(Srings[] args){
int scores[]={80,78,46,43,33};
for(int i:scores){
System.out.println(“数组元素值依次为:” +i);
}
//可以看出的是增强for循环只能引用输出,不能一个个慢慢赋值。

3.使用数组计算5名学生的平均分,最高分,最低分。

import java.util.Scanner;
public class Test2 {
   
   
    public static void main(String[] args) {
   
   
        int scores[] = new int[5];
        double total=0;double avg = 0;
        int max, min = 0;
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入5名学生的笔试成绩:");
        for (int i = 0; i < scores.length; i++) {
   
   
            scores[i] = sc.nextInt();
        }
            max = scores[0];
            min = scores[0];

            for (int j = 0; j < scores.length; j++) {
   
   
                total += scores[j];
                if (scores[j] > max) {
   
   
                    max = scores[j];
                }
                if (min > scores[j]) {
   
   
                    min = scores[j];
                }

            }

            avg = total / scores.length;
            System.out.println(total);
            System.out.println(max);
            System.out.println(min);
            System.out.println(avg);
        }
    }

4.求4家手机店手机价格最小值

import java.util
<?xml version="1.0"?> <robot name="car" xmlns:xacro="http://ros.org/wiki/xacro"> <!-- 1. Base Links --> <link name="base_footprint"> <visual> <geometry> <sphere radius="0.001"/> </geometry> </visual> </link> <link name="base_link"> <inertial> <mass value="2.0"/> <inertia ixx="0.01" ixy="0.0" ixz="0.0" iyy="0.01" iyz="0.0" izz="0.01"/> </inertial> <visual> <geometry> <cylinder radius="0.1" length="0.08"/> </geometry> <origin xyz="0 0 0" rpy="0 0 0"/> <material name="base"> <color rgba="1 0 0 1"/> </material> </visual> <collision> <geometry> <cylinder radius="0.1" length="0.08"/> </geometry> </collision> </link> <joint name="ltf" type="fixed"> <parent link="base_footprint"/> <child link="base_link"/> <origin xyz="0 0 0.055" rpy="0 0 0"/> </joint> <!-- 2. Wheels --> <link name="left"> <inertial> <mass value="0.1"/> <inertia ixx="0.001" ixy="0.0" ixz="0.0" iyy="0.001" iyz="0.0" izz="0.001"/> </inertial> <visual> <geometry> <cylinder radius="0.0325" length="0.015"/> </geometry> <origin xyz="0 0 0" rpy="1.5708 0 0"/> <material name="left"> <color rgba="0 0 0 1"/> </material> </visual> <collision> <geometry> <cylinder radius="0.0325" length="0.015"/> </geometry> </collision> </link> <link name="right"> <inertial> <mass value="0.1"/> <inertia ixx="0.001" ixy="0.0" ixz="0.0" iyy="0.001" iyz="0.0" izz="0.001"/> </inertial> <visual> <geometry> <cylinder radius="0.0325" length="0.015"/> </geometry> <origin xyz="0 0 0" rpy="1.5708 0 0"/> <material name="right"> <color rgba="0 0 0 1"/> </material> </visual> <collision> <geometry> <cylinder radius="0.0325" length="0.015"/> </geometry> </collision> </link> <joint name="base_l_wheel_joint" type="continuous"> <parent link="base_link"/> <child link="left"/> <origin xyz="0 0.1 -0.0225" rpy="0 0 0"/> <axis xyz="0 1 0"/> <dynamics damping="0.1" friction="1.0"/> </joint> <joint name="base_r_wheel_joint" type="continuous"> <parent link="base_link"/> <child link="right"/> <origin xyz="0 -0.1 -0.0225" rpy="0 0 0"/> <axis xyz="0 1 0"/> <dynamics damping="0.1" friction="1.0"/> </joint> <!-- 3. Caster Wheels --> <link name="qwx"> <inertial> <mass value="0.05"/> <inertia ixx="0.0001" ixy="0.0" ixz="0.0" iyy="0.0001" iyz="0.0" izz="0.0001"/> </inertial> <visual> <geometry> <sphere radius="0.0075"/> </geometry> <material name="caster"> <color rgba="0 0 0 1"/> </material> </visual> <collision> <geometry> <sphere radius="0.0075"/> </geometry> </collision> </link> <link name="hwx"> <inertial> <mass value="0.05"/> <inertia ixx="0.0001" ixy="0.0" ixz="0.0" iyy="0.0001" iyz="0.0" izz="0.0001"/> </inertial> <visual> <geometry> <sphere radius="0.0075"/> </geometry> <material name="caster"> <color rgba="0 0 0 1"/> </material> </visual> <collision> <geometry> <sphere radius="0.0075"/> </geometry> </collision> </link> <joint name="qtb" type="continuous"> <parent link="base_link"/> <child link="qwx"/> <origin xyz="0.08 0 -0.0425" rpy="0 0 0"/> <axis xyz="0 1 0"/> </joint> <joint name="htb" type="continuous"> <parent link="base_link"/> <child link="hwx"/> <origin xyz="-0.08 0 -0.0425" rpy="0 0 0"/> <axis xyz="0 1 0"/> </joint> <!-- 4. Laser Sensor --> <link name="laserzj"> <visual> <geometry> <cylinder radius="0.01" length="0.05"/> </geometry> <material name="laserzj"> <color rgba="0 1 0 1"/> </material> </visual> </link> <link name="laser"> <visual> <geometry> <cylinder radius="0.02" length="0.02"/> </geometry> <material name="laser"> <color rgba="1 0 0 1"/> </material> </visual> </link> <joint name="zjtb" type="fixed"> <parent link="base_link"/> <child link="laserzj"/> <origin xyz="0 0 0.06" rpy="0 0 0"/> </joint> <joint name="lasertb" type="fixed"> <parent link="laserzj"/> <child link="laser"/> <origin xyz="0 0 0.03" rpy="0 0 0"/> </joint> <!-- Gazebo Plugins --> <gazebo> <plugin name="gazebo_ros_control" filename="libgazebo_ros_control.so"> <robotNamespace>/</robotNamespace> </plugin> </gazebo> <gazebo reference="laser"> <sensor type="ray" name="laser"> <pose>0 0 0 0 0 0</pose> <visualize>true</visualize> <update_rate>40</update_rate> <ray> <scan> <horizontal> <samples>360</samples> <resolution>1</resolution> <min_angle>-1.5708</min_angle> <max_angle>1.5708</max_angle> </horizontal> </scan> <range> <min>0.1</min> <max>3.0</max> <resolution>0.01</resolution> </range> <noise> <type>gaussian</type> <mean>0.0</mean> <stddev>0.01</stddev> </noise> </ray> <plugin name="gazebo_ros_ray_sensor" filename="libgazebo_ros_ray_sensor.so"> <topicName>/scan</topicName> <frameId>laser</frameId> </plugin> </sensor> </gazebo> </robot>
最新发布
09-18
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值