枚举算法总结 coming~^.*
感谢CJ同学监督╭(╯^╰)╮。从放假到现在都木有更新博客了~噶呜~小娘谨记教诲,每天会更新博客==!!
看了一下POJ训练计划,虽然已经零零散散做了40多道题了,还是从头开始整理一下漏掉的知识点。Today is 枚举~!
很多人认为枚举是笨笨的,但是枚举却又总是我们面对算法问题时的第一反应,也比较容易想到,只要用得好,就不会笨。
在任何情况下,选准最合适的对象,无论是枚举还是其他算法思想,都是最最关键的。选准(枚举)对象的根本原因还是在于优化,具体表现为减少求解步骤,缩小求解的解空间,或者是使程序更具有可读性和易于编写
枚举算法因为要列举问题的所有可能的答案,所有它具备以下几个特点:
1、得到的结果肯定是正确的;
2、可能做了很多的无用功,浪费了宝贵的时间,效率低下。
3、通常会涉及到求极值(如最大,最小,最重等)。
枚举算法的解题过程分为两步:
1,逐一列举可能的解的范围,用循环结构实现。
2,对每一个枚举的可能进行检验,判断是否为真正的解,用选择结构实现。
分析出以上二个核心问题后,再合成:
要注意循环变量与判断对象是否是同一个变量。
知识点不多,具体到题目中再涉及,明天会写枚举的解题报告。嘿嘿~晚安~~!
随机推荐
- Android PopupWindow显示位置和显示大小
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGlhb3l1YW41MTE=/font/5a6L5L2T/fontsize/400/fill/I0JBQk ...
- Android SurfaceView实战 带你玩转flabby bird (上)
转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/42965779 ,本文出自:[张鸿洋的博客] 1.概述 哈,记得以前写过Andro ...
- 采用openFileOutput获取输出流
package com.example.login.service; import java.io.BufferedReader; import java.io.File; import java.i ...
- parquet 合并元数据
合并元数据:两个数据集,有着一部分相同的列,将他们合并成一个数据集时merge的过程. 合并的规则:相同的列,在新的数据集中,是通用的列, 各自不同的列,也作为新的数据集的列. Spark将数据写入到 ...
- BZOJ 1014: [JSOI2008]火星人prefix( splay + hash )
用splay维护序列, 二分+hash来判断LCQ.. #include<bits/stdc++.h> using namespace std; typedef unsigned long ...
- js判断IP js判断域名
<html> <head> <script language="javascript" type="text/javascript" ...
- Quartz中文文档使用
Quartz中文使用说明文档,内容相当详细,有需要的码友们可以看看!! 好东西要分享!! 下面是文档的内容目录,附上下载的地址:点击打开链接,下载文档 中文版目录总汇及内容提要 第一章. 企业应用中的 ...
- 《Javascript权威指南》学习笔记之十二:数组、多维数组和符合数组(哈希映射)
Array(数组)是JavaScript中较为复杂的数据类型,同Java.C#.VB等程序语言的数组相比.Javascript数组中的元素不必为同样的数据类型,能够在数组每一个元素上混合使用数字.日期 ...
- Codeforces Round #258 (Div. 2) 小结
A. Game With Sticks (451A) 水题一道,事实上无论你选取哪一个交叉点,结果都是行数列数都减一,那如今就是谁先减到行.列有一个为0,那么谁就赢了.因为Akshat先选,因此假设行 ...
- db2常用命令(详解)大全
近一年来在项目开发中使用到了IBM的DB2 9.1的数据库产品,跟Oracle相比一些命令有很大的区别,而它最大的功能是支持 xml存储.检索机制,通过XPath进行解析操作,使开发人员免于 ...