枚举
2023-3-6
| 2023-8-2
0  |  阅读时长 0 分钟
type
status
date
slug
summary
tags
category
icon
password
Property
 
枚举算法(Enumeration Algorithm):也称为穷举算法,指的是按照问题本身的性质,一一列举出该问题所有可能的解,并在逐一列举的过程中,将它们逐一与目标状态进行比较以得出满足问题要求的解。在列举的过程中,既不能遗漏也不能重复。
 
核心思想:通过列举问题的所有状态,将它们逐一与目标状态进行比较,从而得到满足条件的解。
 
要点
  • 给出解空间:建立简洁的数学模型。枚举的时候要想清楚:可能的情况是什么?要枚举哪些要素?
  • 减少枚举的空间:枚举的范围是什么?是所有的内容都需要枚举吗?
  • 选择合适的枚举顺序:根据题目判断
 
 

两数之和

题目:给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出和为目标值 target 的那两个整数,并返回它们的数组下标。可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。可以按任意顺序返回答案。
示例:
 
 

计数质数

题目:给定整数 n,返回 所有小于非负整数n的质数的数量 。
示例:
质数的定义:在大于的自然数中,除了和它本身以外不再有其他因数的自然数。因此对于每个数,可以从小到大枚举 中的每个数,判断 是否为的因数。
考虑到如果 的因数,那么也必然是的因数,因此只要校验或者即可。而如果每次选择校验两者中的较小数,则不难发现较小数一定落在的区间中,因此只需要枚举中的所有数即可,这样单次检查的时间复杂度从降低至了
 
 
  • 计算机基础
  • 数据结构与算法
  • 排序模拟
    目录