List 在两个整数列表中查找公共元素
我有两个给定的List 在两个整数列表中查找公共元素,list,delphi,integer,List,Delphi,Integer,我有两个给定的integer列表: alist : TList<Integer>; // eg. 1,2,3,4,5,6,7,8,9 blist : TList<Integer>; // e.g 1,2,3,4,5 Resultlist : TList<Integer>; IgnoreList : TList<Integer>; // e,g, 1,2,3 我同意德米特里的观点。无论列表是否排序,将
integer
列表:
alist : TList<Integer>; // eg. 1,2,3,4,5,6,7,8,9
blist : TList<Integer>; // e.g 1,2,3,4,5
Resultlist : TList<Integer>;
IgnoreList : TList<Integer>; // e,g, 1,2,3
我同意德米特里的观点。无论列表是否排序,将列表转换为哈希集并在其中查找都会很快 看看德尔福的词典。t字典相交是一种快速查找公共元素的方法。否则, 1) 为列入黑名单的元素创建一个TDictionary。 2) 创建一个TDictionary并从列表中插入黑名单字典中不存在的元素。此操作很快,因为TDictionary针对查找进行了优化。
3) 最后,在blist元素上迭代,只在alist字典中输出元素preent。我同意Dmitry。无论列表是否排序,将列表转换为哈希集并在其中查找都会很快 看看德尔福的词典。t字典相交是一种快速查找公共元素的方法。否则, 1) 为列入黑名单的元素创建一个TDictionary。 2) 创建一个TDictionary并从列表中插入黑名单字典中不存在的元素。此操作很快,因为TDictionary针对查找进行了优化。
3) 最后,在blist元素上迭代,只在alist字典中输出元素preent。我同意Dmitry。无论列表是否排序,将列表转换为哈希集并在其中查找都会很快 看看德尔福的词典。t字典相交是一种快速查找公共元素的方法。否则, 1) 为列入黑名单的元素创建一个TDictionary。 2) 创建一个TDictionary并从列表中插入黑名单字典中不存在的元素。此操作很快,因为TDictionary针对查找进行了优化。
3) 最后,在blist元素上迭代,只在alist字典中输出元素preent。我同意Dmitry。无论列表是否排序,将列表转换为哈希集并在其中查找都会很快 看看德尔福的词典。t字典相交是一种快速查找公共元素的方法。否则, 1) 为列入黑名单的元素创建一个TDictionary。 2) 创建一个TDictionary并从列表中插入黑名单字典中不存在的元素。此操作很快,因为TDictionary针对查找进行了优化。
3) 最后,在blist元素上迭代,并且只在alist字典中输出元素preent。这是您想要的。取两个已排序的列表(如果尚未排序,请确保先对其排序)和两个索引变量,将两个索引设置为0,然后开始比较值,如果一个索引不相等,则前进一个索引,或者两个索引都相等。当发现不相等或相等的值时,通过自定义算法的行为,您可以用它做很多事情。这里需要的是,当找到相等的值时,将该值插入到输出列表中。您需要的是。取两个已排序的列表(如果尚未排序,请确保先对其排序)和两个索引变量,将两个索引设置为0,然后开始比较值,如果一个索引不相等,则前进一个索引,或者两个索引都相等。当发现不相等或相等的值时,通过自定义算法的行为,您可以用它做很多事情。这里需要的是,当找到相等的值时,将该值插入到输出列表中。您需要的是。取两个已排序的列表(如果尚未排序,请确保先对其排序)和两个索引变量,将两个索引设置为0,然后开始比较值,如果一个索引不相等,则前进一个索引,或者两个索引都相等。当发现不相等或相等的值时,通过自定义算法的行为,您可以用它做很多事情。这里需要的是,当找到相等的值时,将该值插入到输出列表中。您需要的是。取两个已排序的列表(如果尚未排序,请确保先对其排序)和两个索引变量,将两个索引设置为0,然后开始比较值,如果一个索引不相等,则前进一个索引,或者两个索引都相等。当发现不相等或相等的值时,通过自定义算法的行为,您可以用它做很多事情。这里需要的是,当找到相等的值时,将该值插入输出列表。在您的示例中,列表已排序。在现实生活中,你的列表会一直被排序吗?如果是这样,实现就容易多了。您可以将列表转换为哈希集,并找到一个交集。列表未排序,哈希集是什么?是否有可能值的上下限?如果列表较短,则直线比较all与all最快。在您的示例中,列表已排序。在现实生活中,你的列表会一直被排序吗?如果是这样,实现就容易多了。您可以将列表转换为哈希集,并找到一个交集。列表未排序,哈希集是什么?是否有可能值的上下限?如果列表较短,则直线比较all与all最快。在您的示例中,列表已排序。在现实生活中,你的列表会一直被排序吗?如果是这样,实现就容易多了。您可以将列表转换为哈希集,并找到一个交集。列表未排序,哈希集是什么?是否有可能值的上下限?如果列表较短,则直线比较all与all最快。在您的示例中,列表已排序。在现实生活中,你的列表会一直被排序吗?如果是这样的话,实现就容易多了。你可以将列表转换成哈希集,然后找到一个交集。列表没有排序,哈希集是什么?你有可能的值的上下限吗?如果列表很短,那么直线比较所有与所有是最快的。问题不是这样吗
Resultlist should be 4,5