第一范文网 - 专业文章范例文档资料分享平台

贪心算法详解分析

来源:用户分享 时间:2025/10/11 13:13:30 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

procedure Main; var

I, J, Z, S, T, T1, T2: Integer; begin

FillChar(M, Sizeof(M), 0); {求M数组的值} for I := 1 to N do

if A[I] < B[I] then M[I] := A[I] else M[I] := B[I]; for I := 1 to N do O[I] := I;

for I := 1 to N - 1 do {从小到大排序} for J := I + 1 to N do

if M[O[I]] > M[O[J]] then begin

Z := O[I]; O[I] :=O[J]; O[J] := Z; end;

FillChar(Order, Sizeof(Order), 0); S := 1; T := N; for I := 1 to N do

if M[O[I]] = A[O[I]] then begin

{若A[O[I]]

{若B[O[I]]≧A[O[I]],则插在加工序列的后面} Order[T] := O[I]; T := T - 1; end;

{计算最少加工时间} T1 := 0; T2 := 0;

for I := 1 to N do begin T1 := T1 + A[Order[I]]; if T2 < T1 then T2 := T1; T2 := T2 + B[Order[I]]; end;

Min := T2; end;

procedure Out; {打印输出} var I: Integer; begin

Assign(Output, Outp); Rewrite(Output); Writeln(Min); {输出最少时间} for I := 1 to N do {输出最佳加工序列} Write(Order[I], ' '); Writeln;

Close(Output); end;

Begin Init; {输入} Main; {主过程} Out; {输出} End.

搜索更多关于: 贪心算法详解分析 的文档
贪心算法详解分析.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c1inv39nj700daes3y3831emx02sb1m00voa_6.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top