算法数据结构笔记 枚举

数据结构与算法_枚举(穷举)算法 数据结构与算法_枚举(穷举)算法(视频),Dev-C++语言环境!信息学奥赛基础算法! 立即下载

枚举就是猜测每一种可能性,比如1 + [  ] = 3,如果不用代数计算的话,那么就把0~9都尝试一遍,即可得出答案。

 

循环实现的枚举

考虑这样的一个问题,[  ][  ]+[  ][  ] = 51 空格中,数字随意填写,可重复,不考虑0。

我们通过四层for循环,分别遍历1~9暴力枚举所有数字组合可能性,来得出答案。

#include <stdio.h>
#include <stdlib.h>
#include <Windows.h>

int main()
{
	for (int i = 1; i <= 9; i++)
	{
		for (int j = 1; j <= 9; j++)
		{
			for (int k = 1; k <= 9; k++)
			{
				for (int x = 1; x <= 9; x++)
				{
					if (i * 10 + j + k * 10 + x == 51) //判断是否符合[  ][  ]+[  ][  ] = 51
						printf("%d%d + %d%d = 51\n", i, j, k, x);
				}
			}
		}
	}
	system("pause");
	return 0;
}

运行结果是这样的:

 

递归实现的枚举

这是通过不断调用自己来实现的枚举,他非要重要,这种递归调用可以模拟无限个for。

#include <stdio.h>
#include <stdlib.h>
#include <Windows.h>

int b[10];

void a(int s)
{
	if (s == 5) //s等于5代表这个一个新的组合,可以判断是否合法了
	{
		if (b[1] * 10 + b[2] + b[3] * 10 + b[4] == 51)//判断
			printf("%d%d + %d%d = 51\n", b[1], b[2], b[3], b[4]); //打印
		return;
	}

	for (int i = 1; i <= 9; i++) //遍历1到9
	{
		b[s] = i;//第一次进入s是1,i也是1
		a(s + 1); //然后调用自己,s+1,这样下一次进入就是s就是2
	}
	return;
}

int main()
{
	a(1);
	system("pause");
	return 0;
}

 其结果和之前一样

 

 

 

CLIP-Count代码配置以及踩坑记录 阅读详情

相关推荐

NVMe-MI --- Message Servicing Model(消息服务模型)

本文主要介绍NVMe-MI消息服务模型,两个主要类别是请求消息和响应消息。并介绍带外机制消息服务状态机。

智小星的博客 2014

算法数据结构——枚举算法(Enumeration Algorithm)讲解,如何简单快速的解决问题

枚举算法(Enumeration Algorithm):也称为穷举算法,指的是按照问题本身的性质,一一列举出该问题所有可能的解,并在逐一列举的过程中,将它们逐一与目标状态进行比较以得出满足问题要求的解。在列举的过程中,既不能遗漏也不能重复。枚举算法的核心思想是:通过列举问题的所有状态,将它们逐一与目标状态进行比较,从而得到满足条件的解。由于枚举算法要通过列举问题的所有状态来得到满足条件的解,因此,在问题规模变大时,其效率一般是比较低的。

白话机器学习 8210

R以及Rstudio超详细安装教程(包括安装过程中出现的问题)

R安装及Rstudio安装,以及安装中出现的问题

2301_76908257的博客 1万+

数据结构-枚举

package Demo; public class Demo { public static void main(String[] args) { Season spring = Season.SPRING; System.out.println(spring); System.out.println(spring.getSeasonDesc()); } } class S...

大尧酱的博客 820

【车载以太网测试从入门到精通】系列文章目录汇总

物理层测试、数据链路层测试、以太网交换机测试、网络层测试、传输层测试、以太网TCP/IP协议自动化测试、以太网网络管理测试、以太网网络管理自动化测试、鲁棒性测试、SOME/IP测试、SOMEI/IP服务接口自动化测试、DoIP诊断测试、DoIP诊断自动化测试、DoIP BootLoader刷写、以太网网关路由测试、以太网网关路由自动化测试、AVB测试。

测试领域技术分享 3162

“华为杯”研究生数学建模竞赛2017年-【华为杯】B题:面向下一代光通信的 VCSEL 激光器仿真模型

得出以下主要结论:在相同的偏置电流条件下,随着温度的升高,带宽的峰值向。在相同的温度下,随着电流的增大,带宽的峰值越小且曲线由波峰形状。方案,包括可能的数学公式,不同温度和偏置电流下的带宽响应曲线,并与问题。线,得出以下主要结论:在相同的偏置电流条件下,随着温度的升高,带宽的峰。在相同的温度下,随着电流的增大,带宽的峰值越小且曲线由波峰形状逐渐变得。得的激光器特性曲线和模型中仿真得到的特性曲线,之后,可以将两组曲线的差。说明的是,由于数值优化算法的成功与否很大程度上依赖于初始参数的猜测,参。

getusushu的博客 99

【数据结构】14.枚举的使用

但是常量举例有不好的地方,例如:可能碰巧有个数字1,但是他有可能误会是RED,现在我们可以直接使用枚举来进行组织,这样依赖,就拥有了类型,枚举类型。而不是普通的整型1.优点:将常量组织起来统一进行管理。场景:错误状态码,消息类型,颜色的划分,状态机等等……本质:是java.lang.Enum的子类,也就是说,自己写的枚举类,就算没有显示的继承Enum,但是默认继承了这个类。2. 使用1.Switch语句case RED:break;break;break;break;

2301_79719531的博客 944

OpenCV实战之人脸美颜美型(八)——大眼(上)

从大众审美的角度来看,眼睛适当的“变大”会让人显得更加年轻。因此美型中就有一项大眼功能,其效果就是让眼睛适当变大,这章内容就围绕着大眼算法展开。

On my way 1211

数据结构-枚举算法

理解枚举思想枚举框架枚举算法的适用条件枚举的优化典型枚举问题。

qq_48664605的博客 1104

FPGA面试题目笔记(一)——FPGA开发流程、亚稳态和竞争冒险、建立保持时间、异步FIFO深度等

同步异步电路、同步异步复位、时钟偏移和抖动、最小工作周期计算、触发器锁存器

H19981118的博客 1万+

YOLOv13改进策略【Head】| (独家改进)结合 ICME-2024 中的PPA注意力模块,自研带有注意力机制的小目标检测头

本文记录的是利用PPA (并行补丁感知注意模块)改进YOLOv13的检测头。通过改进传统卷积,形成带有注意力机制的小目标检测头,使模型能够更好地关注小目标的重要信息。HCF-Net: Hierarchical Context Fusion Network for Infrared Small Object Detection采用多分支特征提取策略,通过不同分支提取不同尺度和层次的特征。利用局部、全局和串行卷积分支,对输入特征张量进行处理。通过控制 patch size参数实现局部和全局分支的区分,计算非重叠

Limiiiing的博客 480

数据结构——枚举算法笔记

枚举算法: 又称为穷举法,在解决问题时,可能无法按照一定的规律从众多的答案中找出正确答案,此时,可以从众多的候选解中逐一取出候选答案,并验证选取的答案是否为正确答案。缺点:运算量大,解题效率低。优点:思路简单,程序编写调试方便。 例子: 逻辑推理题,问谁在说慌? 张三说李四在说谎,李四说王五在说谎,王五说张三,李四都在说谎。此类逻辑推理题无法用正常推理方法得出答案,但...

weixin_30426065的博客 207

【YOLOv12多模态融合改进】| TFAM:时序融合注意力模块 | 引入通道 - 空间双分支注意力机制,解决双模态特征融合中时序关联不足的问题

TFAM模块通过时序信息驱动的注意力机制,解决了双时相特征融合中时序关联不足的问题,实现了更精准的变化区域定位和特征表示。其结构轻量、泛化性强,为变化检测任务提供了一种高效的特征融合解决方案。

Limiiiing的博客 867

蓝桥杯备赛(C/C++组)

试题考查选手解决实际问题的能力,对于,选手可以使用手算、软件、编程等方法解决,对于,选手只能使用编程解决。选手可在 C 语言程序中使用标准 C 的库函数, 在 C++语言程序中使用标准 C++的库函数(包括 C 库、STL 等)。考查范围(计算机算法)包括:枚举、排序、搜索、计数、贪心、动态规划、图论、数论、博弈论*、概率论、计算几何*、字符串算法等。数据结构:数组、对象/结构、字符串、队列、栈、树、图、堆、平衡树线段树、复杂数据结构、嵌套数据结构*等。

wuhu_czy的博客 1万+

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

《啊哈!算法》读书笔记

零零散散花了一周的时间阅读了《啊哈!算法》。这本书内容相对基础,适合初学者时阅读(当然,大神也可以温故而知新)。《啊哈!算法》这本书中的算法举例贴近生活,语言诙谐幽默,不会让人产生枯燥感,并配有很多幽默的插图。算法讲解通俗易懂,并配有详细C语言代码和注释,是一本初学者不易错过的好书。注:书作者偶尔会在书中卖萌的。已掌握的知识点在下面不在赘述,只记录觉得需要记忆整理的东西,作为自己的读书笔记。包括一些小技巧、新概念、生疏算法等。内容仍比较杂乱,需要进一步细化整理。 《啊哈!算法》中涉及的数据结构有栈、队列、链

h532600610的博客 6871

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

【练习】2021下半年数据结构刷题笔记和总结 (三)栈 队列 链表 枚举算法

题目来自书或者网站。 解密QQ 号——队列回文字符串---栈火柴棍等式输入数字n,要求输出从1~n的全排列 解密QQ 号——队列 小哈告诉了小哼一串加密过的数字,同时小哈也告诉了小哼解密规则。规则是这样的:首先将第1 个数删除,紧接着将第2 个数放到这串数的末尾,再将第3 个数删除并将第4 个数放到这串数的末尾,再将第5 个数删除……直到剩下最后一个数,将最后一个数也删除。按照刚才删除的顺序,把这些删除的数连在一起就是小哈的QQ 啦。现在你来帮帮小哼吧。小哈给小哼加密过的一串数是“6 3 1 7 5 8

qq_41358574的博客 606

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

蓝桥杯python省赛备战day2--连续求和公式应用--829连续整数求和-枚举算法刷题学习笔记2--leetcode

介绍了简单求和公式在算法题中的应用以及实操算法题的具体方法论。

2302_80218188的博客 452

《Python常用算法手册》笔记和读后感

《Python常用算法手册》笔记和读后感 这是一篇关于Python和常用算法结合的blog。 以下是之后笔记的目录 初步认识算法思想 枚举算法思想 递归算法思想 分治算法思想 贪心算法思想 回溯算法思想 迭代算法思想 查找算法 排序算法 使用算法解决数据结构问题 解决数学问题 经典算法问题 那么今天愉快的算法分享时间就开始了 Day1 一:初步认识算法思想 1.1 什么是算法 ...

qq_52126817的博客 1509

蓝桥杯python省赛备战day1--埃氏筛和欧拉筛--204计数质数-枚举算法刷题学习笔记1--leetcode

介绍了埃氏筛以及欧拉筛(线性筛)筛选质数的原理以及python算法的代码实现。

2302_80218188的博客 752

做题笔记QWQ

记录每次遇到的好题。

2301_81505656的博客 997

算法复习笔记

【代码】算法复习笔记。

m0_60378969的博客 463

ARM_C高级笔记目录

ARM_C笔记目录 ARM_C学习笔记(零)指针与数组. ARM_C高级学习笔记(二)程序获取内存的方式-栈、堆、数据区. ARM_C高级学习笔记(三)C语言中的字符串类型. ARM_C高级学习笔记(四)结构体详解. ARM_C高级学习笔记(五)共用体. ARM_C高级学习笔记(六)大端模式和小端模式. ARM_C高级学习笔记(七)枚举. ARM_C高级学习笔记(八)宏定义和预处理. ARM...

weixin_44112805的博客 537

蓝桥杯python省赛备战day2--数组枚举--845数组中的最长山脉-枚举算法刷题学习笔记3--leetcode

运用数组枚举实战题目介绍了枚举算法题需要注意的索引不越界问题以及先枚举后判断检索的思想。

2302_80218188的博客 753

《算法和数据结构》数据结构篇

蓝桥杯你必须学会的算法

英雄哪里出来 4万+

【算法笔记】B1016 部分A+B

【算法笔记】B1016 部分A+B 1016部分A+B(15分) 正整数A的“D​A​​(为 1 位整数)部分”定义为由A中所有D​A​​组成的新整数P​A​​。例如:给定A=3862767,D​A​​=6,则A的“6 部分”P​A​​是 66,因为A中有 2 个 6。 现给定A、D​A​​、...

花村游戏店老板的博客 185

《算法笔记》--菜菜籽的入门之路

《算法笔记》菜鸟入门) 全排列(Full Permutation) 下面这个例子是《算法笔记》第115页的改编,大意:输入n,对整数1~n全排列,并且输出排列的结果。 思路:递归 具体来讲就是整数x可以排列在不同的位置(即index)下,通过枚举实现递归,比较容易遗漏的是执行每一条递归子任务要切记还原hashtable[index]为false,否则下一次出错。 //全排列// #include&...

糕糕的博客 150
上一篇: 算法数据结构笔记 链表,栈链表,链表中插入
下一篇: 算法数据结构笔记 深度优先搜索
崔佳宇_
崔佳宇_ 优质创作者: 嵌入式与硬件开发技术领域 优质创作者: 嵌入式与硬件开发技术领域
博客等级 码龄10年 1万+粉丝 173原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值