我是靠谱客的博主 酷酷衬衫,这篇文章主要介绍【题解】《C语言入门100例》(第27例) 穷举查找一. 穷举查找二. 推荐专栏三. 相关练习,现在分享给大家,希望可以做个参考。

文章目录

  • 一. 穷举查找
  • 二. 推荐专栏
  • 三. 相关练习
    • 3.1 统计位数为偶数的数字
    • 3.2 有序数组中的单一元素

一. 穷举查找

  穷举法在进行归纳推理时,如果逐个考察了某类事件的所有可能情况,因而得出一般结论,那么这结论是可靠的,这种归纳方法叫做穷举法我们通常利用计算机运算速度快的特点,将所有情况都一一列举出来进行操作。

基本思路:

  1. 确定穷举对象
  2. 确定穷举范围

举例:
  在一个数组内查找某一个数第一次出现的位置,并返回其下标。

代码如下:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h> int Find(int arr[], int n){ for (int i = 0; i < arr; i++){ if(arr[i] == n){ return i; } } return -1; } int main(){ int arr[] = { 3, 4, 2, 6, 4, 2, 7, 5, 7 }; int n = Find(arr, 5); printf("5第一次出现的位置为:%dn", n); return 0; }

二. 推荐专栏

《C语言入门100例》(第27例) 穷举查找

三. 相关练习

3.1 统计位数为偶数的数字

题目链接:

1295. 统计位数为偶数的数字

这到题我们通过穷举法,对每个数字进行判断,如果为偶数就++。

代码如下:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int findNumbers(int* nums, int numsSize){ int ret = 0; for(int i = 0; i < numsSize; i++){ int n = 0; while(nums[i]){ nums[i] /= 10; n++; } if(n % 2 == 0){ ret++; } } return ret; }

3.2 有序数组中的单一元素

题目链接:

540. 有序数组中的单一元素

应为给定的数组是有序的,所以我们对其进行穷举,进行判断

代码如下:

复制代码
1
2
3
4
5
6
7
8
9
10
int singleNonDuplicate(int* nums, int numsSize){ int i = 0; for(; i < numsSize - 1; i += 2){ if(nums[i] != nums[i + 1]){ return nums[i]; } } return nums[i]; }

最后

以上就是酷酷衬衫最近收集整理的关于【题解】《C语言入门100例》(第27例) 穷举查找一. 穷举查找二. 推荐专栏三. 相关练习的全部内容,更多相关【题解】《C语言入门100例》(第27例)内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(70)

评论列表共有 0 条评论

立即
投稿
返回
顶部