一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務(wù)器之家 - 編程語言 - JAVA教程 - c語言來實(shí)現(xiàn)貪心算法之裝箱問題

c語言來實(shí)現(xiàn)貪心算法之裝箱問題

2019-12-12 15:09hebedich JAVA教程

這篇文章主要介紹了c語言來實(shí)現(xiàn)貪心算法之裝箱問題,需要的朋友可以參考下

裝箱問題,貪心算法求近似最優(yōu)解

 

復(fù)制代碼代碼如下:

import java.util.Arrays;
import java.util.Comparator;
//裝箱問題,貪心算法
public class Enchase {
    public void test1() {
        Integer[] boxs={34,6,40,2,23,12,12};
        int boxCaptation=40;//箱子容量
        //倒序
        Arrays.sort(boxs, new Comparator<Integer>() {
            @Override
            public int compare(Integer o1, Integer o2) {
                return o2-o1;
            }
        });
        int unEnchase=boxs.length;//未裝箱數(shù)
        int minIndex=boxs.length-1;//最小的箱子指向
        while (unEnchase>0) {
            for(int i=0;i<boxs.length;i++){
                //位置箱子重量為零跳過
                if(boxs[i]==0){
                    continue;
                }
                unEnchase--;
                while((boxCaptation-boxs[i])>=boxs[minIndex]){
                    int k=i+1;
                    for(;k>i;k++){
                        //位置箱子重量為零跳過
                        if(boxs[k]==0){
                            continue;
                        }
                        //將箱子加上去,原來位置清零
                        boxs[i]+=boxs[k];
                        int temp=boxs[k];
                        boxs[k]=0;
                        unEnchase--;
                        if(boxs[i]>boxCaptation){
                            //超過最大可容納體積,狀態(tài)復(fù)原
                            unEnchase++;
                            boxs[k]=temp;
                            boxs[i]-=boxs[k];
                            continue;
                        }
                        //最小箱子更新
                        if(k==minIndex){
                            for(int y=minIndex;y>0;y--){
                                if(boxs[y]!=0){
                                    minIndex=y;
                                }
                            }
                        }
                        break;
                    }
                }
            }
        }
        //統(tǒng)計(jì)箱子數(shù)
        int Boxcount=0;
        System.out.println("裝箱結(jié)果:");
        for(int i=0;i<boxs.length;i++){
            System.out.print(boxs[i]+"\t");
            if(boxs[i]==0){
                continue;
            }
            Boxcount++;
        }
        System.out.println("\n箱子數(shù):"+Boxcount);
    }
    public static void main(String[] args) {
        new Enchase().test1();
    }
}

 

以上就是本文的全部內(nèi)容了,希望大家能夠喜歡。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 亚洲欧美专区 | 日韩网站在线观看 | 天天操天天干天天做 | 欧美一级片免费在线观看 | 国产男人搡女人免费视频 | 小草观看免费高清视频 | 亚洲国产成人精品无码区5566 | 极品奶妈漫画 | 成年视频在线播放 | 国产综合成色在线视频 | 久久99热狠狠色AV蜜臀 | 欧美视频一级 | 国产一久久香蕉国产线看观看 | 亚洲 欧美 日本 国产 高清 | 欧美高清无砖专区欧美精品 | 99久精品| 亚洲高清国产拍精品影院 | 性春院| 精品视频一区二区 | www.成人在线视频 | 免费看男女做好爽好硬视频 | 国产亚洲福利一区二区免费看 | 男人香蕉好大好爽视频 | 男人天堂官方网站 | 久久精品国产在热亚洲完整版 | 欧美亚洲视频在线观看 | 日本剧情片在线播放中文版 | 精品无人区麻豆乱码无限制 | 成人综合婷婷国产精品久久免费 | 日韩欧美一区二区三区中文精品 | 欧美a欧美1级 | 亚洲成人看片 | 欧美男同互吃gay老头 | 亚洲视频在线免费 | 精品人人视屏 | 成人午夜毛片 | 亚洲国产精品成人午夜在线观看 | 亚洲日本aⅴ片在线观看香蕉 | 韩国甜性涩爱免费观看 | 久久视频这有精品63在线国产 | 午夜香蕉成视频人网站高清版 |