delphi合并两个数组例子
来源:互联网 发布:java研发工程师南昌 编辑:程序博客网 时间:2024/06/14 08:12
使用delphi写的例子,但愿有人来看…
{$R *.dfm}procedure TForm1.btn1Click(Sender: TObject);var arr1,arr2,arr3,arr4:array of Integer; i,k,n,x:Integer; a,b:integer; flag:boolean;begin Randomize; a:=3; b:=5; SetLength(arr1,a); SetLength(arr2,b); lst1.Clear; repeat flag:=True; for i:=0 to (a-1) do arr1[i]:=Random(5); for i:=0 to (b-1) do arr2[i]:=Random(6); //由于数组1和数组2的元素是随机出来的可能存在重复 for i:=0 to (a-2) do begin for k:=(i+1) to (a-1) do begin if arr1[i]=arr1[k] then flag:=False; end; end; for i:=0 to (b-2) do begin for k:=(i+1) to (b-1) do begin if arr2[i]=arr2[k] then flag:=False; end; end; until flag; //将两个数组内容比较,排除重复的 if a>b then begin //遍历数量少的那个数组 for i:=0 to (b-1) do for k:=0 to (a-1) do begin //如果数组1和数组2有相同元素,那么去掉数组2中的相同元素 //数组1独有的元素+数组1和2共有的元素+数组2独有的元素 if arr2[i]=arr1[k] then begin arr2[i]:=-100; end; end; end else begin for i:=0 to (a-1) do for k:=0 to (b-1) do begin //如果数组1和数组2有相同元素,那么去掉数组2中的相同元素 //数组1独有的元素+数组1和2共有的元素+数组2独有的元素 if arr1[i]=arr2[k] then begin arr1[i]:=-100; end; end; end; //找出少的那个数组值为-1的数量 //数组1的数量+数组2的数量-重复数量 x:=0; //这是a>b的情况 if a>b then begin for i:=0 to (b-1) do begin if arr2[i]=-100 then x:=x+1; end; n:=a+b-x; SetLength(arr3,n); for i:=0 to (a-1) do begin arr3[i]:=arr1[i]; end; if (b-x)<>0 then SetLength(arr4,b-x); k:=0; for i:=0 to (b-1) do begin if arr2[i]<>-100 then begin arr4[k]:=arr2[i]; k:=k+1; end; end; //x=0的时候说明没有重复的 for i:=a to (b-x+a-1) do begin if (b-x)<>0 then arr3[i]:=arr4[i-a]; end; end // a<=b的情况 else begin for i:=0 to (a-1) do begin if arr1[i]=-100 then x:=x+1; end; n:=a+b-x; SetLength(arr3,n); for i:=0 to (b-1) do begin arr3[i]:=arr2[i]; end; //x=0的时候说明没有重复的 if (a-x)<>0 then SetLength(arr4,a-x); k:=0; for i:=0 to (a-1) do begin if arr1[i]<>-100 then begin arr4[k]:=arr1[i]; k:=k+1; end; end; //x=0的时候说明没有重复的 for i:=b to (a-x+b-1) do begin if (a-x)<>0 then arr3[i]:=arr4[i-b]; end; end; k:=0; for i:= 0 to (n-1) do begin k:=k+1; lst1.Items.Add(IntToStr(arr3[i])); end; edt1.Text:=IntToStr(k);end;
阅读全文
0 0
- delphi合并两个数组例子
- 合并两个数组
- 两个数组合并
- 合并两个有序数组
- 合并两个有序数组
- js合并两个数组
- 合并两个有序数组
- 合并两个排序数组
- C#两个数组合并
- 合并两个有序数组
- 合并两个有序数组
- 合并两个排序数组
- 合并两个数组
- 合并两个有序数组
- 合并两个有序数组
- 两个byte[]数组合并
- 合并两个数组
- 合并两个有序数组
- ZooKeeper原理浅析
- 拆分PDF文档需要什么软件?如何进行操作?
- C++中类模板和实现分离的方法
- 动态SQL
- get方式长度受限,如何将较长数据传递到后台
- delphi合并两个数组例子
- 文本框及 Combo Box内数据清除
- 二叉树 基本概念
- 关于解决 ORA-28595、ORA-06520 sql报错问题
- 第五篇 CSS入门 明白 三种嵌套形式,三种常用控制器
- SDWebImage 的使用
- redis集群动态增加或者删除节点
- 547. Friend Circles(并查集)
- 【51Nod1353】树