Java课程设计运输问题最小元素法.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

目录

TOC\o1-3\h\u24374目录 1

174791引言 2

30213 2

16874 2

284302设计思路 3

22682 3

7866 3

768——最小元素法做题的根本思路 3

136743正文〔核心代码分析〕 4

140583.1对Mn类的分析 4

12443.2给初始表赋值 5

3490 7

7599 8

10203 9

281783.6程序及结果截图如下 15

292254结论 16

4836参考文献 16

22050附录〔程序完整代码〕 17

1引言

意义

深入理解java语言的语法规那么及其优势,掌握类与方法的构造方法,掌握基于java的各种操作的实现方法,训练对根底知识和根本方法的综合运用能力,增强对算法的理解能力,提高软件设计能力。在实践中培养独立分析问题和解决问题的能力。

在这次课程设计中,通过从理论到实践的用运添加了我对学习Java语言的兴趣,并且我更加深切的了解到我在学习程序时的缺陷和缺乏,为以后的学习提供了方向。

1.2主要内容

在java开发环境下,运用GUI用户界面技术,通过运输问题的根本算法,实现对运输问题的求解。要求通过对运输问题根本算法的学习,掌握其原理,运用Java语言来实现该算法流程,取得最优方案。通过GUI界面显示该运输问题的单位运价表和平衡表。

2设计思路

运输问题模型及其求解思路

从模型的建立可知:

列数为2〔产地数〕×3〔销地数〕=6;

行数为2〔产地数〕+3〔销地数〕=5;

再观察模型的系数矩阵(如图1所示):

图1

运输问题最小元素法

最小元素法是找出运价表中最小的元素,在运量表内对应的格填入允许取得的最大数,假设某行(列)的产量(销量)已满足,那么把运价表中该运价所在行(列)划去;找出未划去的运价中的最小数值,按此方法进行下去,直至得到一个根本可行解的方法。

——最小元素法做题的根本思路

最小元素法的根本思想是:运价最小的优先调运,即从单位运价中最小的运价开始确定供销关系,然后次小,一直到给出初始根本可行解为止。

具体实现:

定义两个二维数组,分别用来存放“单位运价表”和“平衡表”,数据由GUI界面写入。2.运用最小元素法从表二中找到最小的那个元素,将这个元素的值用“产量和销量”中比拟小的那个替代。

然后将其对应的行或者是列的其他元素的值全部置为“0”。

4.接着用同样的方法依次填表,最终将表一和表二的数据对应相乘,得到的值就已经很接近最小运费了。

3正文〔核心代码分析〕

3.1对Mn类的分析

importjavax.swing.*;

classMainFrameextendsJFrame{//主窗体类,以后所有的面板将会往这个容器里面添加

MainPanelmainpanel;

publicMainFrame(){

//设置窗口的大小

setSize(500,500);

//添加标题

setTitle(运输问题);

//设置窗口的可见性

setVisible(true);

//设置窗口的可关闭性

setDefaultCloseOperation(EXIT_ON_CLOSE);

mainpanel=newMainPanel();

//添加主面板

add(mainpanel);

}

}

/**

*程序的入口,代码将开始从这里执行

*/

3.2给初始表赋值

说明:平衡表和单位运价表赋初值,即我所解问题的必要数据,代码如下:

classCalculate{

intsumoftrsportation=0;

intpriceoftrs[][]=newint[3][4];

intchartofcalance[][]=newint[4][5];

publicCalculate(){

priceoftrs[0][0]=Integer.parseInt(MainPanel.tf_00.getText().trim());

priceoftrs[0][1]=Integer.parseInt(MainPanel.tf_01.getText().trim());

priceoftrs[0][2]=Integer.parseInt(MainPanel.tf_02.getText().trim());

priceoftrs[0][3]=Integer.parse

文档评论(0)

liuzhouzhong + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档