有两个集合分别有n个和m个元素,n和m数量级相差大,比如n=1000,m=1000000,如果集合里面全部为数字,怎么算求出两个集合之间的差集。 原来我想的办法是把两个集合分别进行快速排序,时间平均复杂度分别为nlogn和mlogm,然后遍及n集合,依次去和m集合进行比较,可以分三种情况,然后就可以求出交集。是否有更好的办法求出两个集合之间的差集?
c php 算法 C++
排序取差集是一种方法,但效率不高 可以考虑用空间换时间,把元素生成hash,通过hash来比较差集,这种方法我认为效率较优
如何快速生成一批(千万级别)不重复的邀请码?
有哪些帮助你敏捷开发的网站
一个算法:在极大的无序序列中寻找三个数和大于等于N的所有组合数量
请问匹配最后一个空格后的内容的正则表达式怎么写?
如何快速把一个多维数组转换成一个简单一维数组
如何高效查找一个字符串中,出现次数最多的字符?