枚举算法

枚举法:又称穷举法,是指从可能的集合中一一列举各个元素,用题目给定的约束条件判定哪些是无用的,哪些是有用的。能使命题成立者,即为问题的解。

案例

首先我们先来看一个枚举算法的经典案例,当乘积所有位数一致时,乘数是多少:


*


/*js代码*/
   var aP = document.querySelectorAll('p');
   var span1 = aP[0].querySelectorAll('span');
   var span2 = aP[1].querySelectorAll('span');
   var span3 = aP[2].querySelectorAll('span');

   for(var i=1;i<=9;i++){
     for(var j=1;j<=9;j++){
         for(var k=1;k<=9;k++){
         for(var m=1;m<=9;m++){
             for(var n=1;n<=9;n++){
             
             var a = 10000*i + 1000*j + 100*k + 10*m + 1*n;
             var b = i;
             var c = 5*111111;

             if(a*b == c){
                span1[0].innerHTML = i;
                span1[1].innerHTML = j;
                span1[2].innerHTML = k;
                span1[3].innerHTML = m;
                span1[4].innerHTML = n;
                span2[0].innerHTML = i;
                for(var x=0;x
实例

我们做一个前端领域常用的实例,点击城市名就能在ul标签里添加一个城市,如果有重复点击,该城市会排到第一位


北京 上海 武汉 成都 昆明 重庆 深圳 杭州 苏州 无锡 南通 广州 天津 青岛

列举了一些城市,新建了一个空的盒子ul,我们接着用js实现点击动态添加元素

   var city = document.querySelectorAll('a');
   var list = document.querySelector('ul');
   var item = document.getElementsByTagName('li');

   for(var i=0;i

大功告成!!!

你可能感兴趣的:(枚举算法)