去重复方法小集

复制代码
//js
function removeDumpicatedItem(arr){
	var ret = [];
	for(var i=0;i<arr.length;i++){
		if(ret.indexOf(arr[i]==-1)){
			ret.push(arr[i])
		}
	}
	return ret;
}
复制代码
复制代码
//java(无序)
public static List removeDuplicate(List list){
	HashSet hashSet = new HashSet(list);
	list.clear();
	list.add(hashSet);
	return list;
}
复制代码

复制代码
//java(有序)
public static List removeDuplicate(List list){
	List ret = new ArrayList();
	for(int i=0;i<list.size();i++){
		if(!ret.contains(list.get(i))){
			ret.add(list.get(i))
		}
	}
	return ret;
}
复制代码

Java中,我们可以编写一个简单的程序来实现这个功能。首先,我们需要创建一个函数来检查一个数是否是素数,然后通过循环分解输入的合数。以下是实现的基本步骤: ```java import java.util.ArrayList; import java.util.Scanner; public class PrimeFactorization { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("请输入一个合数:"); int num = scanner.nextInt(); ArrayList<Integer> primeFactors = getPrimeFactors(num); // 并按升序排序 primeFactors = removeDuplicatesAndSort(primeFactors); System.out.println("合数 " + num + " 分解成素数的最小为:"); for (int factor : primeFactors) { System.out.print(factor + " "); } } // 检查一个数是否为素数 private static boolean isPrime(int n) { if (n <= 1) return false; for (int i = 2; i * i <= n; i++) { if (n % i == 0) return false; } return true; } // 获取合数的所有质因数 private static ArrayList<Integer> getPrimeFactors(int num) { ArrayList<Integer> factors = new ArrayList<>(); for (int i = 2; i <= num; i++) { while (num % i == 0 && isPrime(i)) { // 如果i能整除num且是质数 factors.add(i); num /= i; // 更新num为除以i后的结果 } } return factors; } // 并排序数组 private static ArrayList<Integer> removeDuplicatesAndSort(ArrayList<Integer> list) { list.sort(Integer::compareTo); // 先排序 return new ArrayList<>(new HashSet<>(list)); // 使用HashSet,再转换回ArrayList } } ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值