P5718 【深基4.例2】找最小值

题目描述

给出 n n n 和 n n n 个整数 a i a_i ai,求这 n n n 个整数中最小值是什么。

输入格式

第一行输入一个正整数 n n n,表示数字个数。

第二行输入 n n n 个非负整数,表示 a 1 , a 2 ... a n a_1,a_2 \dots a_n a1,a2...an,以空格隔开。

输出格式

输出一个非负整数,表示这 n n n 个非负整数中的最小值。

1.题目分析

该题只要考查的排序,这里可以选择的排序方法有很多:冒泡排序,选择排序,插入排序,甚至你可以使用效率较高的快速排序。一些高级语言如Java,c++可以直接调用封装好的API.。

2.题目思路

键入数据,存储到整型数组,数组大小可以设置成100,因为c语言中不支持动态数组的定义。然后进行冒泡排序,所谓冒泡就是循环n-1一次,每循环一次相邻元素之间进行比较一轮,从而在边界索引处确定一个最值,为优化算法内部循环次数需要做一些删减,当然也可以直接不删减,内外循环n次也可以实现排序。

3.代码演示

c 复制代码
#include <stdio.h>

int main() {
    int arr[100];
    int n, a;
    scanf("%d", &n);
    //键入数据,存入数组中
    for (int i = 0; i < n; ++i) {
        scanf("%d", &a);
        arr[i] = a;
    }
    int temp;
    //冒泡排序
    for (int i = 0; i < n - 1; ++i) {
        for (int j = 0; j < n - i - 1; ++j) {
            if (arr[j] > arr[j + 1]) {
                temp = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = temp;
            }
        }
    }
    //打印第一个元素
    printf("%d",arr[0]);

    return 0;
}
相关推荐
WL_Aurora3 分钟前
Python 算法基础篇之什么是算法
python·算法
墨染天姬10 分钟前
[AI]DeepSeek-R1的GRPO算法
人工智能·算法·php
D_C_tyu13 分钟前
JavaScript | 数独游戏核心算法实现
javascript·算法·游戏
qiqsevenqiqiqiqi13 分钟前
MT2048三连 暴力→数学推导→O (n) 优化
数据结构·c++·算法
码之气三段.20 分钟前
十五届山东ccpc省赛补题(update)
数据结构·c++·算法
AI科技星1 小时前
ELN 升级:π 级数自动生成器全域数理架构
大数据·人工智能·python·算法·金融
强盛机器学习~1 小时前
2026年SCI一区新算法-傅里叶变换优化算法(FTO)-公式原理详解与性能测评 Matlab代码免费获取
算法·matlab·进化计算·群体智能·傅里叶变换·元启发式算法
王老师青少年编程1 小时前
csp信奥赛C++高频考点专项训练之贪心算法 --【跳跃与过河问题】:过河问题
c++·算法·贪心·csp·信奥赛·跳跃与过河问题·过河问题
沉默-_-2 小时前
备战蓝桥杯-哈希
c++·学习·算法·蓝桥杯·哈希算法
拼好饭和她皆失2 小时前
基础算法--写给算法小白的模板指南:快速掌握核心代码,蓝桥杯必备模板
算法