delphi将两个Strlist合并,求并集

Function StrList_Merge(StrListA,StrListB:String):String; //将两个Strlist合并,求并集
var SListA,SListB,SListC:TStringList;
i:Integer;
begin
Result := ‘‘;
Try
SListA := TStringList.Create;
SListB := TStringList.Create;
SListC := TStringList.Create;
SListA.CommaText := StrListA;

SListB.CommaText := StrListB;
SListC.Assign(SListA);
for i:=0 to SListB.Count-1 do begin
if SListC.IndexOf(SListB[i])<0 then SListC.Add(SListB[i]);
end;
Result := SListC.CommaText;
Finally
FreeAndNil(SListA);

FreeAndNil(SListB);

FreeAndNil(SListC);
end;

end;

时间: 2024-10-27 19:29:32

delphi将两个Strlist合并,求并集的相关文章

delphi将两个Strlist合并,求交集 (保留相同的)

Function StrList_Join(StrListA,StrListB:String):String; //将两个Strlist合并,求交集 (保留相同的) var SListA,SListB,SListC:TStringList; i:Integer; begin Result := ''; Try SListA := TStringList.Create; SListB := TStringList.Create; SListC := TStringList.Create; SLis

【Java】两个ArrayList之间求交并补

同样的方法应该也使用在<[Java]Java中的Collections类--Java中升级版的数据结构>(点击打开链接)中提及到Java中的各类集合,这里拿各位编程最常用的ArrayList做例子.这个东西除了用来做可变形数组以外,有时候还会出现要在两个ArrayList之间进行集合运算,我在这里举出最常见的求交并补的例子,其余的复杂的集合运算,请自己打开<离散数学>或者<数理逻辑>一书慢慢推导吧.我们是程序猿,不是数学家,要在两个ArrayList之间求交并补已经很少

HDU 3911 区间合并求最大长度的问题

http://vjudge.net/problem/viewProblem.action?id=21557 题目大意: 每进行一次颜色改变都可以把一段区间内的黑石头变成白石头,白石头变成黑石头,最后问区间内黑石头连续的最大长度 这里我们可以用rev[]作为lazy标记,每次进行改变,rev[]^1 因为有黑白两种石头,我们求连续区间,需要维护黑,白两种石头的左侧最多,右侧最多和全部最多,所以我们这里可以用一个二维数组进行描述 每次做出改变,只要将黑白石头的值进行交换即可就方便了很多 对于最后访问

6041 I Curse Myself(点双联通加集合合并求前K大) 2017多校第一场

题意: 给出一个仙人掌图,然后求他的前K小生成树. 思路: 先给出官方题解 由于图是一个仙人掌,所以显然对于图上的每一个环都需要从环上取出一条边删掉.所以问题就变为有 M 个集合,每个集合里面都有一堆数字,要从每个集合中选择一个恰好一个数加起来.求所有的这样的和中,前 K 大的是哪些.这就是一个经典问题了. 点双联通就不说了 都一眼能看出来做法就是缩点之后每个环每次取一个,然后找最大的k个所以这道题的难点就在这里,做法当然是不知道啦,看了题解和博客才懂的.以前做过两个集合合并的,这个是k个合并,

有序数组合并求第K大问题

题目描述 Description 给出两个有序数组A和B(从小到大有序),合并两个有序数组后新数组c也有序,询问c数组中第k大的数 假设不计入输入输出复杂度,你能否给出一个O(logN)的方法? 输入描述 Input Description 第一行输入三个整数n.m和k 第二行输入n个用空格隔开的整数表示数组A 第三行输入m个用空格隔开的整数表示数组B 输入保证A和B数组非递减 输出描述 Output Description 合并两个数组之后的第k大的数 样例输入 Sample Input 2

python中将两个list合并为字典

两个list合并为字典的代码如下: def Run(): list2 = [1, 2, 3, 4, 5 ]; list3 = ["a", "b", "c", "d","e"]; dict={}; i=0; length=len(list2); while i<length: 'dict[list2[i]]=list3[i];这种方法也可以' dit={list2[i]:list3[i]}; dict.

20161116 输入两个自然数,求它们的和

题目: 输入两个自然数,求它们的和. 代码: 1 program work20161126; 2 var 3 a,b,c:integer; 4 BEGIN 5 readln(a,b); 6 c:=a+b; 7 writeln(c); 8 END.     

STL--H - Black Box(两个优先队列,求第k小的值)

H - Black Box Time Limit:1000MS     Memory Limit:10000KB     64bit IO Format:%I64d & %I64u Submit Status Description Our Black Box represents a primitive database. It can save an integer array and has a special i variable. At the initial moment Black

linux 两个文件合并

可以使用cat命令,有两种实现的方式,一种将两个文件合并的到一个新的文件,另一种将一个文件追加到另一个文件的末尾. 方法一:使用cat命令从文件中读入两个文件,然后将重定向到一个新的文件.这种方法可以一次性合并任意多个文件.用法示例:将file1.txt和file2.txt合并到file.txt$ cat file1.txt file2.txt > file.txt 方法二:只使用cat命令读入一个文件,然后使用>>将文本流追加到另一个文件的末位.用法示例:将file1.txt追加到fi