习题参考解答(图论部分)
- 格式:doc
- 大小:406.00 KB
- 文档页数:27
习题一1. 一个工厂为一结点;若两个工厂之间有业务联系,则此两点之间用边相联;这样就得到一个无向图。
若每点的度数为3,则总度数为27,与图的总度数总是偶数的性质矛盾。
若仅有四个点的度数为偶数,则其余五个点度数均为奇数,从而总度数为奇数,仍与图的总度数总是偶数的性质矛盾。
2. 若存在孤立点,则m 不超过K n-1的边数, 故 m <= (n-1)(n-2)/2, 与题设矛盾。
3.4. 用向量(a 1,a 2,a 3)表示三个量杯中水的量, 其中a i 为第i 杯中水的量, i = 1,2,3.以满足a 1+a 2+a 3 = 8 (a 1,a 2,a 3为非负整数)的所有向量作为各结点, 如果(a 1,a 2,a 3)中某杯的水倒满另一杯得到 ( a ’1, a ’2, a ’3 ) , 则由结点到结点画一条有向边。
这样可得一个有向图。
本题即为在此图中找一条由( 8, 0, 0 )到( 4, 4, 0 )的一条有向路,以下即是这样的一条:5. 可以。
7. 同构。
同构的双射如下:8. 记e 1= (v 1,v 2), e 2= ( v 1,v 4), e 3= (v 3,v 1), e 4= (v 2,v 5), e 5= (v 6,v 3), e 6= (v 6,v 4), e 7= (v 5,v 3), e 8= (v 3,v 4), e 9 = (v 6,v 1), 则邻接矩阵为: 关联矩阵为:∑∑∑∑∑∑∑==+====-=++=-==---=--=ni i n i i n i n i n i ni i i n i i n i i i i a a n n a a a n n n a n a v v 1111121212/)1()1(2)1(])1[(。
, 所以 因为 ,+ 的负度数,则为结点的正度数,为结点记-----22 222 i i C a a ⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡---------100110000001001000010100010011010100000001001100000111, 001101000100000000001001010000001010⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡( 8, 0, 0 ) ( 5, 3, 0 ) ( 5, 0, 3 ) ( 2, 3, 3 ) ( 2, 5, 1 )(7, 0, 1 ) ( 7, 1, 0 ) ( 4, 4, 0 )( 4, 1, 3 )边列表为:A= (1,1,3,2,6,6,5,3,6), B= (2,4,1,5,3,4,3,4,1). 正向表为:A= (1,3,4,6,6,7,10), B= (2,4,5,1,4,3,3,4,1).习题二1. 用数学归纳法。
图论习题答案
《图论习题答案》
图论作为数学中的一个重要分支,研究的是图的性质和图之间的关系。
在学习
图论的过程中,我们常常会遇到各种各样的习题,通过解答这些习题可以帮助
我们更好地理解图论的知识。
下面就让我们来看一些图论习题的答案吧。
1. 问:一个图中有多少条边?
答:一个图中的边数可以通过计算每个顶点的度数之和再除以2来得到。
2. 问:一个图中有多少个连通分量?
答:一个图中的连通分量可以通过使用深度优先搜索或广度优先搜索来求得。
3. 问:一个图中是否存在欧拉回路?
答:一个图中存在欧拉回路的充分必要条件是每个顶点的度数都是偶数。
4. 问:一个图中是否存在哈密顿回路?
答:一个图中存在哈密顿回路的判定是一个NP难题,目前还没有有效的多项式时间算法。
5. 问:一个图中的最小生成树有多少条边?
答:一个图中的最小生成树的边数恰好等于顶点数减一。
通过解答这些图论习题,我们可以更好地掌握图论的基本概念和算法。
图论不
仅在数学领域有着重要的应用,而且在计算机科学、电信网络等领域也有着广
泛的应用。
因此,熟练掌握图论知识对我们的学习和工作都有着重要的意义。
希望通过本文的分享,能够帮助大家更好地理解图论知识,提高解决问题的能力。
同时也希望大家在学习图论的过程中能够多多练习,勇于挑战各种各样的
图论习题,不断提升自己的图论水平。
祝大家在图论的学习道路上取得更大的
进步!。
学号:0441 姓名:张倩 习题14.证明图1-28中的两图是同构的证明:将图1-28的两图顶点标号为如下的(a)与(b)图作映射f : f(v i )?u i (1? i ? 10)容易证明,对?v i v j ?E((a)),有f(v i v j )?u i u j ?E((b)) (1? i ? 10, 1?j? 10 ) 由图的同构定义知,图1-27的两个图是同构的。
5.证明:四个顶点的非同构简单图有11个。
证明:设四个顶点中边的个数为m ,则有: m=0:m=1 :(a)v 2 v 3u 4u (b)m=2:m=3:m=4:m=5:m=6:因为四个顶点的简单图最多就是具有6条边,上面所列出的情形是在不同边的条件下的不同构的情形,则从上面穷举出的情况可以看出四个顶点的非同构简单图有11个。
11.证明:序列(7,6,5,4,3,3,2)和(6,6,5,4,3,3,1)不是图序列。
证明:由于7个顶点的简单图的最大度不会超过6,因此序列(7,6,5,4,3,3,2)不是图序列;(6,6,5,4,3,3,1)是图序列()11123121,1,,1,,,=d d n d d d d d π++---L L 是图序列(5,4,3,2,2,0)是图序列,然而(5,4,3,2,2,0)不是图序列,所以(6,6,5,4,3,3,1)不是图序列。
12.证明:若δ≥2,则G 包含圈。
证明 只就连通图证明即可。
设V(G)={v1,v2,…,vn},对于G 中的路v1v2…vk,若vk 与v1邻接,则构成一个圈。
若vi1vi2…vin 是一条路,由于?? 2,因此,对vin ,存在点vik 与之邻接,则vik?vinvik 构成一个圈 。
17.证明:若G 不连通,则G 连通。
证明 对)(,_G V v u ∈∀,若u 与v 属于G 的不同连通分支,显然u 与v 在_G 中连通;若u 与v 属于g 的同一连通分支,设w 为G 的另一个连通分支中的一个顶点,则u 与w ,v 与w 分别在_G 中连通,因此,u 与v 在_G 中连通。
离散数学习题解答 习题六 (第六章 图论)1.从日常生活中列举出三个例子,并由这些例子自然地导出两个无向图及一个向图。
[解] ①用V 代表全国城市的集合,E 代表各城市间的铁路线的集合,则所成之图G=(V ,E )是全国铁路交通图。
是一个无向图。
②V 用代表中国象棋盘中的格子点集,E 代表任两个相邻小方格的对角线的集合,则所成之图G=(V ,E )是中国象棋中“马”所能走的路线图。
是一个无向图。
③用V 代表FORTRAN 程序的块集合,E 代表任两个程序块之间的调用关系,则所成之图G+(V ,E )是FORTRAN 程序的调用关系图。
是一个有向图。
2.画出下左图的补图。
[解] 左图的补图如右图所示。
3.证明下面两图同构。
a v 2 v 3 v 4图G图G ′[证] 存在双射函数ϕ:V →V ′及双射函数ψ : E →E ′ϕ (v 1)=v 1′ ϕ (v 1,v 2)=(v 1′,v 2′) ϕ (v 2)=v 2′ ϕ (v 2,v 3)=(v 2′,v 3′) ϕ (v 3)=v 3′ ϕ (v 3,v 4)=(v 3′,v 4′) ϕ (v 4)=v 4′ ϕ (v 4,v 5)=(v 4′,v 5) ϕ (v 5)=v 5′ ϕ (v 5,v 6)=(v 5′,v 6′) ϕ (v 6)=v 6′ϕ (v 6,v 1)=(v 6′,v 1′) ϕ (v 1,v 4)=(v 1′,v 4′) ϕ (v 2,v 5)=(v 2′,v 5′) ϕ (v 3,v 6)=(v 3′,v 6′)显然使下式成立:ψ (v i ,v j )=(v i ,v j ′)⇒ ϕ (v i )=v i ′∧ϕ (v j )=v j ′ (1≤i ·j ≤6) 于是图G 与图G ′同构。
4.证明(a ),(b )中的两个图都是不同构的。
图G 中有一个长度为4的圈v 1v 2v 6v 5v 1,其各顶点的度均为3点,而在图G ′中却没有这样的圈,因为它中的四个度为3的顶点v 1',v 5',v 7',v 3'不成长度的4的圈。
二、应用题题0:(1996年全国数学联赛)有n(n≥6)个人聚会,已知每个人至少认识其中的[n/2]个人,而对任意的[n/2]个人,或者其中有两个人相互认识,或者余下的n-[n/2]个人中有两个人相互认识。
证明这n个人中必有3个人互相认识。
注:[n/2]表示不超过n/2的最大整数。
证明将n个人用n个顶点表示,如其中的两个人互相认识,就在相应的两个顶点之间连一条边,得图G。
由条件可知,G是具有n个顶点的简单图,并且有(1)对每个顶点x,)N G≥[n/2];(x(2)对V的任一个子集S,只要S=[n/2],S中有两个顶点相邻或V-S中有两个顶点相邻。
需要证明G中有三个顶点两两相邻。
反证,若G中不存在三个两两相邻的顶点。
在G中取两个相邻的顶点x1和y1,记N G(x1)={y1,y2,……,y t}和N G(y1)={x1,x2,……,x k},则N G(x1)和N G(y1)不相交,并且N G(x1)(N G(y1))中没有相邻的顶点对。
情况一;n=2r:此时[n/2]=r,由(1)和上述假设,t=k=r且N G(y1)=V-N G(x1),但N G(x1)中没有相邻的顶点对,由(2),N G(y1)中有相邻的顶点对,矛盾。
情况二;n=2r+1: 此时[n/2]=r,由于N G(x1)和N G(y1)不相交,t≥r,k≥r,所以r+1≥t,r+1≥k。
若t=r+1,则k=r,即N G(y1)=r,N G(x1)=V-N G(y1),由(2),N G(x1)或N G(y1)中有相邻的顶点对,矛盾。
故k≠r+1,同理t≠r+1。
所以t=r,k=r。
记w∈V- N G(x1) ∪N G(y1),由(2),w分别与N G(x1)和N G(y1)中一个顶点相邻,设wx i0∈E, wy j0∈E。
若x i0y j0∈E,则w,x i0, y j0两两相邻,矛盾。
若x i0y j0∉E,则与x i0相邻的顶点只能是(N G(x1)-{y j0})∪{w},与y j0相邻的顶点只能是(N G(y1)-{x j0})∪{w}。
习题一作者---寒江独钓1.证明:在n 阶连通图中(1) 至少有n-1条边;(2) 如果边数大于n-1,则至少有一条闭迹;(3) 如果恰有n-1条边,则至少有一个奇度点。
证明: (1) 若G 中没有1度顶点,由握手定理:()2()21v V G m d v n m n m n ∈=≥⇒≥⇒>-∑若G 中有1度顶点u ,对G 的顶点数作数学归纳。
当n=2时,结论显然;设结论对n=k 时成立。
当n=k+1时,考虑G-u,它仍然为连通图,所以,边数≥k-1.于是G 的边数≥k.(2) 考虑G 中途径:121:n n W v v v v -→→→→L若W 是路,则长为n-1;但由于G 的边数大于n-1,因此,存在v i 与v j ,它们相异,但邻接。
于是:1i i j i v v v v +→→→→L 为G 中一闭途径,于是也就存在闭迹。
(3) 若不然,G 中顶点度数至少为2,于是由握手定理:()2()21v V G m d v n m n m n ∈=≥⇒≥⇒>-∑这与G 中恰有n-1条边矛盾! 2.(1)2n −12n 2−12n −1 (2)2n−2−1(3) 2n−2。
证明:u 1的两个邻接点与v 1的两个邻接点状况不同。
所以,两图不同构。
4.证明下面两图同构。
u 1 v 1证明:作映射f : v i ↔ u i (i=1,2….10)容易证明,对∀v i v j ∈E ((a)),有f (v i v j,),=,u i,u j,∈,E,((b))(1≤ i ≤ 10, 1≤j ≤ 10 )由图的同构定义知,图(a)与(b)是同构的。
5.指出4个顶点的非同构的所有简单图。
分析:四个顶点的简单图最少边数为0,最多边数为6,所以可按边数进行枚举。
(a)v 2 v 3u 4u(b)6.证明:1)充分性:当G 是完全图时,每个顶点的度数都是n −1,共有n 个顶点,总的度数为n(n −1),因此总的边数是n(n−1)2=(n 2). 2)必要性:因为G 是简单图,所以当G 是完全图的时候每个顶点的度数才达到最大:n −1.若G 不是完全图,则至少有一个顶点的度数小于n −1,这样的话,总的度数就要小于n (n −1),因此总的边数小于(n 2),矛盾。
第1章 图论预备知识1.1解:(1) p={φ,{a},{b},{c},{a,b},{a,c},{b,c},{a,b,c}}(2) p={,{a},{{b,c}},{a,{b,c}}} (3) p={,{}}(4) p={,{},{{}},{,{}}}(5)p={,{{a,b}},{{a,a,b}},{{a,b,a,b}},{{a,b},{a,a,b}},{{a,b},{a,b,a,b}},{{a,b},{a,a,b},{a,b,a,b}}} 1.2 解:(1) 真 (2) 假 (3)假 (4)假 1.3 解:(1) 不成立,A={1} B={1,2} C={2} (2) 不成立,A={1} B={1,2} C={1,3}1.4 证明:设(x,y)∈(A ∩B)X(C ∩D) 说明x ∈A ∩B,y ∈C ∩D 由于 x ∈A,y ∈C 所以 (x,y) ∈A X C 由于x ∈B,y ∈D 所以 (x,y) ∈B X D 所以 (x,y) ∈(A X C )∩(B X D ) 反过来,如果(x,y )∈(A X C) ∩(B X D ) 由于 (x,y) ∈(A X C )所以 x ∈A,y ∈C 由于 (x,y) ∈(B X D )所以x ∈B,y ∈D 所以x ∈(A ∩B) y ∈(C ∩D) 所以 (x,y) ∈(A ∩B)X(C ∩D)所以(A ∩B)X(C ∩D)= (A X C) ∩(B X D ) 1.5 解:Hasse 图φφφφφφφφφ极大元{9,24,10,7} 极小元{3,2,5,7} 最大元{24} 最小元{2}1.6 解(2)关系图为:(3)不存在最大元,最小元为{2}1.7 解:(1)R={<1,1>,<2,2>,<3,3>,<4,4>,<1,2>,<2,1>,<2,3>,<3,2>} (2)略(3)I A ⊆R 故R 是自反的。
图论习题及答案(总24页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--作业解答练习题2 利用matlab编程FFD算法完成下题:设有6种物品,它们的体积分别为:60、45、35、20、20和20单位体积,箱子的容积为100个单位体积。
解答一:function [num,s] = BinPackingFFD(w,capacity)%一维装箱问题的FFD(降序首次适应)算法求解:先将物体按长度从大到小排序, %然后按FF算法对物体装箱%输入参数w为物品体积,capacity为箱子容量%输出参数num为所用箱子个数,s为元胞数组,表示装箱方案,s{i}为第i个箱子所装%物品体积数组%例w = [60,45,35,20,20,20]; capacity = 100;% num=3,s={[1,3],[2,4,5],6};w = sort(w,'descend');n = length(w);s = cell(1,n);bin = capacity * ones(1,n);num = 1;for i = 1:nfor j = 1:num + 1if w(i) < bin(j)bin(j) = bin(j) - w(i);s{j} = [s{j},i];if j == num + 1num = num + 1;endbreak;endendends = s(1:num);解答二:clear;clc;V=100;v=[60 45 35 20 20 20];n=length(v);v=fliplr(sort(v));box_count=1;x=zeros(n,n);V_Left=100;for i=1:nif v(i)>=max(V_Left)box_count=box_count+1;x(i,box_count)=1;V_Left=[V_Left V-v(i)];elsej=1;while(v(i)>V_Left(j))j=j+1;endx(i,j)=1;V_Left(j)=V_Left(j)-v(i);endtemp=find(x(i,:)==1);fprintf('第%d个物品放在第%d个容器\n',i,temp) endoutput:第1个物品放在第1个容器第2个物品放在第2个容器第3个物品放在第1个容器第4个物品放在第2个容器第5个物品放在第2个容器第6个物品放在第3个容器解答三:function box_count=FFD(x)%降序首次适应算法v=100;x=fliplr(sort(x));%v=input('请输入箱子的容积:');n=length(x);I=ones(n);E=zeros(1,n);box=v*I;box_count=0;for i=1:nj=1;while(j<=box_count)if x(i)>box(j)j=j+1;continue;elsebox(j)=box(j)-x(i);E(i)=j;break;endendif j>box_countbox_count=box_count+1;box(box_count)=box(box_count)-x(i);E(i)=j;endenddisp(E);在命令窗口输入:>> x=[60,45,35,20,20,20];>> FFD(x)1 2 1 2 2 3ans =3练习题5 “超市大赢家”提供了50种商品作为奖品供中奖顾客选择,车的容量为1000dm3, 奖品i占用的空间为w i dm3,价值为v i元, 具体的数据如下:v= { 220, 208, 198, 192, 180, 180, 165, 162, 160, 158,155, 130, 125, i122, 120, 118, 115, 110, 105, 101, 100, 100, 98,96, 95, 90, 88, 82, 80, 77, 75, 73, 72, 70, 69, 66, 65, 63, 60, 58,56, 50, 30, 20, 15, 10, 8, 5, 3, 1}w= {80, 82, 85, 70, 72, 70, 66, 50, 55, 25, 50, 55, 40, 48,50, 32,i22, 60, 30, 32, 40, 38, 35, 32, 25, 28, 30, 22, 50, 30, 45,30, 60, 50, 20, 65, 20, 25, 30, 10, 20, 25, 15, 10, 10, 10, 4, 4, 2,1}。
二、应用题题0:(1996年全国数学联赛)有n (n ≥6)个人聚会,已知每个人至少认识其中的[n /2]个人,而对任意的[n /2]个人,或者其中有两个人相互认识,或者余下的n -[n /2]个人中有两个人相互认识。
证明这n 个人中必有3个人互相认识。
注:[n /2]表示不超过n /2的最大整数。
证明 将n 个人用n 个顶点表示,如其中的两个人互相认识,就在相应的两个顶点之间连一条边,得图G 。
由条件可知,G 是具有n 个顶点的简单图,并且有(1)对每个顶点x ,)(x N G ≥[n /2];(2)对V 的任一个子集S ,只要S =[n /2],S 中有两个顶点相邻或V-S 中有两个顶点相邻。
需要证明G 中有三个顶点两两相邻。
反证,若G 中不存在三个两两相邻的顶点。
在G 中取两个相邻的顶点x 1和y 1,记N G (x 1)={y 1,y 2,……,y t }和N G (y 1)={x 1,x 2,……,x k },则N G (x 1)和N G (y 1)不相交,并且N G (x 1)(N G (y 1))中没有相邻的顶点对。
情况一;n=2r :此时[n /2]=r ,由(1)和上述假设,t=k=r 且N G (y 1)=V-N G (x 1),但N G (x 1)中没有相邻的顶点对,由(2),N G (y 1)中有相邻的顶点对,矛盾。
情况二;n=2r+1: 此时[n /2]=r ,由于N G (x 1)和N G (y 1)不相交,t ≥r,k ≥r,所以r+1≥t,r+1≥k 。
若t=r+1,则k=r ,即N G (y 1)=r ,N G (x 1)=V-N G (y 1),由(2),N G (x 1)或N G (y 1)中有相邻的顶点对,矛盾。
故k ≠r+1,同理t ≠r+1。
所以t=r,k=r 。
记w ∈V- N G (x 1) ∪N G (y 1),由(2),w 分别与N G (x 1)和N G (y 1)中一个顶点相邻,设wx i0∈E, wy j0∈E 。
二、应用题题0 : (1996年全国数学联赛)有n (n_6)个人聚会,已知每个人至少认识其中的[n/2]个人,而对任意的[n/2]个人,或者其中有两个人相互认识,或者余下的n-[n/2]个人中有两个人相互认识。
证明这n个人中必有3个人互相认识。
注:[n/2]表示不超过n/2的最大整数。
证明将n个人用n个顶点表示,如其中的两个人互相认识,就在相应的两个顶点之间连一条边,得图G。
由条件可知,G是具有n个顶点的简单图,并且有(1)对每个顶点x, N G(X)工[n/2];(2)对V的任一个子集S,只要S = [n/2], S中有两个顶点相邻或V-S中有两个顶点相邻。
需要证明G中有三个顶点两两相邻。
反证,若G中不存在三个两两相邻的顶点。
在G中取两个相邻的顶点X i和y i,记N G(X I)={y i,y2, ,y t}和N G(y i)={x i,X2, ,X k},贝U N G(X I)和N G(y i)不相交,并且N G(X I) (N G(y i)) 中没有相邻的顶点对。
情况一;n=2r:此时[n/2]=「,由(i)和上述假设,t=k=r 且N G(y i) = V-N G(X I),但N G(X I)中没有相邻的顶点对,由(2), N G(y i)中有相邻的顶点对,矛盾。
情况二;n=2r+i:此时[n/2]= r,由于N G(X I)和N G(y i)不相交,t亠r,k ",所以r+i 亠t,r+i 丄k。
若t=r+i,则k=r,即N G(y i)=r, N G(X I)= V-N G(y i),由(2), N G(X I)或N G(y i)中有相邻的顶点对,矛盾。
故k z r+i,同理r+i。
所以t=r,k=r。
记w^V- N G(X I) U N G(y i),由(2), w 分别与N G(X I)和N G(y i)中一个顶点相邻,设wx io,E, wy jo,E。
若X io y jo・E,则w , X io, y jo两两相邻,矛盾。
《离散数学》第四部分---图论练习题答案一、选择或填空1、设G是一个哈密尔顿图,则G一定是( )。
(1) 欧拉图(2) 树(3) 平面图(4) 连通图答:(4)2、下面给出的集合中,哪一个是前缀码?( )(1) {0,10,110,101111} (2) {01,001,000,1}(3) {b,c,aa,ab,aba} (4) {1,11,101,001,0011}答:(2)3、一个图的哈密尔顿路是一条通过图中( )的路。
答:所有结点一次且恰好一次4、在有向图中,结点v的出度deg+(v)表示( ),入度deg-(v)表示( )。
答:以v为起点的边的条数,以v为终点的边的条数5、设G是一棵树,则G 的生成树有( )棵。
(1) 0 (2) 1 (3) 2 (4) 不能确定答:16、n阶无向完全图K n 的边数是( ),每个结点的度数是( )。
答:2)1(nn, n-17、一棵无向树的顶点数n与边数m关系是( )。
8、一个图的欧拉回路是一条通过图中( )的回路。
答:所有边一次且恰好一次9、有n个结点的树,其结点度数之和是( )。
答:2n-210、下面给出的集合中,哪一个不是前缀码( )。
(1) {a,ab,110,a1b11} (2) {01,001,000,1}(3) {1,2,00,01,0210} (4) {12,11,101,002,0011}答:(1)11、n个结点的有向完全图边数是( ),每个结点的度数是( )。
答:n(n-1),2n-212、一个无向图有生成树的充分必要条件是( )。
答:它是连通图13、设G是一棵树,n,m分别表示顶点数和边数,则(1) n=m (2) m=n+1 (3) n=m+1 (4) 不能确定。
答:(3)14、设T=〈V,E〉是一棵树,若|V|>1,则T中至少存在( )片树叶。
答:215、任何连通无向图G至少有( )棵生成树,当且仅当G 是( ),G的生成树只有一棵。
作业解答练习题2 利用matlab编程FFD算法完成下题:设有6种物品,它们的体积分别为:60、45、35、20、20和20单位体积,箱子的容积为100个单位体积。
解答一:function [num,s] = BinPackingFFD(w,capacity)%一维装箱问题的FFD(降序首次适应)算法求解:先将物体按长度从大到小排序,%然后按FF算法对物体装箱%输入参数w为物品体积,capacity为箱子容量%输出参数num为所用箱子个数,s为元胞数组,表示装箱方案,s{i}为第i个箱子所装%物品体积数组%例w = [60,45,35,20,20,20]; capacity = 100;% num=3,s={[1,3],[2,4,5],6};w = sort(w,'descend');n = length(w);s = cell(1,n);bin = capacity * ones(1,n);num = 1;for i = 1:nfor j = 1:num + 1if w(i) < bin(j)bin(j) = bin(j) - w(i);s{j} = [s{j},i];if j == num + 1num = num + 1;endbreak;endendends = s(1:num);解答二:clear;clc;V=100;v=[60 45 35 20 20 20];n=length(v);v=fliplr(sort(v));box_count=1;x=zeros(n,n);V_Left=100;for i=1:nif v(i)>=max(V_Left)box_count=box_count+1;x(i,box_count)=1;V_Left=[V_Left V-v(i)];elsej=1;while(v(i)>V_Left(j))j=j+1;endx(i,j)=1;V_Left(j)=V_Left(j)-v(i);endtemp=find(x(i,:)==1);fprintf('第%d个物品放在第%d个容器\n',i,temp) endoutput:第1个物品放在第1个容器第2个物品放在第2个容器第3个物品放在第1个容器第4个物品放在第2个容器第5个物品放在第2个容器第6个物品放在第3个容器解答三:function box_count=FFD(x)%降序首次适应算法v=100;x=fliplr(sort(x));%v=input('请输入箱子的容积:');n=length(x);I=ones(n);E=zeros(1,n);box=v*I;box_count=0;for i=1:nj=1;while(j<=box_count)if x(i)>box(j)j=j+1;continue;elsebox(j)=box(j)-x(i);E(i)=j;break;endendif j>box_countbox_count=box_count+1;box(box_count)=box(box_count)-x(i);E(i)=j;endenddisp(E);在命令窗口输入:>> x=[60,45,35,20,20,20];>> FFD(x)1 2 1 2 2 3ans =3练习题5 “超市大赢家”提供了50种商品作为奖品供中奖顾客选择,车的容量为1000dm3, 奖品i占用的空间为w i dm3,价值为v i元, 具体的数据如下:v i= { 220, 208, 198, 192, 180, 180, 165, 162, 160, 158,155, 130, 125, 122, 120, 118, 115, 110, 105, 101, 100, 100, 98,96, 95, 90, 88, 82, 80, 77, 75, 73, 72, 70, 69, 66, 65, 63, 60, 58,56, 50, 30, 20, 15, 10, 8, 5, 3, 1}w i = {80, 82, 85, 70, 72, 70, 66, 50, 55, 25, 50, 55, 40, 48,50, 32, 22, 60, 30, 32, 40, 38, 35, 32, 25, 28, 30, 22, 50, 30, 45,30, 60, 50, 20, 65, 20, 25, 30, 10, 20, 25, 15, 10, 10, 10, 4, 4, 2,1}。