zoukankan      html  css  js  c++  java
  • 算法之枚举

    算法
    枚举算法:(enum) 枚举名
    简介:枚举算法简单粗暴,他暴力的枚举所有可能,尽可能地尝试所有的方法。虽然枚举算法非常暴力,而且速度可能很慢,但确实我们最应该优先考虑的!因为枚举法变成实现最简单,并且得到的结果总是正确的。
    在实际问题中, 有些变量的取值被限定在一个有限的范围内。例如,一个星期内只有七天,一年只有十二个月, 一个班每周有六门课程等等。如果把这些量说明为整型, 字符型或其它类型显然是不妥当的。 为此,C语言提供了一种称为“枚举”的类型。在“枚举”类型的定义中列举出所有可能的取值, 被说明为该“枚举”类型的变量取值不能超过定义的范围。应该说明的是,枚举类型是一种基本数据类型,而不是一种构造类型, 因为它不能再分解为任何基本类型。
    java中枚举的定义:
    public class EnumTest {
    public enum weekdays{
    firstday,secondday,thirdday
    }
    }
    或者
    enum weekdays{
    firstday,secondday,thirdday
    }
    枚举的定义枚举类型定义的一般形式为:
    enum 枚举名
    { 枚举值表 };
    在枚举值表中应罗列出所有可用值。这些值也称为枚举元素。
    例如: public enum weekday
    { sun,mou,tue,wed,thu,fri,sat };
    该枚举名为weekday,枚举值共有7个,即一周中的七天。 凡被说明为weekday类型变量的取值只能是七天中的某一天。
    基本思想:
    枚举也称作穷举,指的是从问题所有可能的解的集合中一一枚举各元素。
    用题目中给定的检验条件判定哪些是无用的,哪些是有用的。能使命题成立。即为其解
    优缺点:
    优点:算法简单,在局部地方使用枚举法,效果十分的好
    缺点:运算量过大,当问题的规模变大的时候,循环的阶数越大,执行速度越慢
    枚举类型使用的注意事项:
    1.在使用枚举的时候注意枚举的值一定是常量,不能再进行赋值操作。枚举类型中也可以进行方法的枚举。
    2.枚举类型的值可以进行比较,比较类型视情况而定。
     
  • 相关阅读:
    屏幕适配问题
    对八大排序算法的补充说明
    基数排序
    归并排序
    快速排序
    简单选择排序
    堆排序
    希尔排序
    直接插入排序
    (转)Android APK反编译详解
  • 原文地址:https://www.cnblogs.com/xyzmy/p/8487899.html
Copyright © 2011-2022 走看看