【java】查重类的实现
import java.util.Vector; public class ElementCheck { // 重复优先
static Vector<Integer> CheckSameElement1(Vector<String> test) {
Vector<Integer> markA = new Vector();
Vector<Integer> markB = new Vector();
for (int i = 0; i < test.size(); i++) {
markA.add(0);
}
for (int i = 0; i < test.size(); i++) {
if (markA.get(i) != 1) {
for (int n = i + 1; n < test.size(); n++) {
if (markA.get(n) != 1) {
try {
if (test.get(i).equals(test.get(n))) {
if (markA.get(i) != 1) {
markB.add(i);
}
markA.set(n, 1);
markA.set(i, 1);
markB.add(n);
}
} catch (Exception e) {
}
}
}
}
} return markB;
} // 序号排列优先
static Vector<Integer> CheckSameElement2(Vector<String> test) {
Vector<Integer> markA = new Vector();
Vector<Integer> markB = new Vector();
for (int i = 0; i < test.size(); i++) {
markA.add(0);
}
int a = 0;
for (int i = 0; i < test.size(); i++) {
if (markA.get(i) != 1) {
for (int n = i + 1; n < test.size(); n++) {
if (markA.get(n) != 1) {
try {
if (test.get(i).equals(test.get(n))) {
markA.set(n, 1);
markA.set(i, 1);
}
} catch (Exception e) {
}
}
}
}
}
for (int i = 0; i < test.size(); i++) {
if (markA.get(i) == 1) {
markB.add(i);
}
}
return markB;
} static Vector<Integer> CheckDifferentElement(Vector<String> test) {
Vector<Integer> markA = new Vector();
Vector<Integer> markB = new Vector();
for (int i = 0; i < test.size(); i++) {
markA.add(0);
}
int a = 0;
for (int i = 0; i < test.size(); i++) {
if (markA.get(i) != 1) {
for (int n = i + 1; n < test.size(); n++) {
if (markA.get(n) != 1) {
try {
if (test.get(i).equals(test.get(n))) {
markA.set(n, 1);
markA.set(i, 1);
}
} catch (Exception e) {
}
}
}
}
}
for (int i = 0; i < test.size(); i++) {
if (markA.get(i) != 1) {
markB.add(i);
}
}
return markB;
}
}
类及方法的说明:
类:ElementCheck
CheckSameElement1(Vector<String> test)
Vector<String> test:目标数组
将目标数组中重复的元素的序号以Vector<Integer>类型返还,排序方式为重复优先
CheckSameElement2(Vector<String> test)
Vector<String> test:目标数组
将目标数组中重复的元素的序号以Vector<Integer>类型返还,排序方式为序号排列优先
CheckDifferentElement(Vector<String> test)
Vector<String> test:目标数组
将目标数组中不重复的元素的序号以Vector<Integer>类型返还
---------------------
作者:小轩砸
来源:CSDN
原文:https://blog.csdn.net/m0_37459696/article/details/68939768
版权声明:本文为博主原创文章,转载请附上博文链接!
【java】查重类的实现的更多相关文章
- Java 查漏补缺
摘自<老马说编程> 计算机程序的思维逻辑 (4) - 整数的二进制表示与位运算 Java中不支持直接写二进制常量,比如,想写二进制形式的11001,Java中不能直接写,可以在前面补0,补 ...
- 【NLP】Python实例:申报项目查重系统设计与实现
Python实例:申报项目查重系统设计与实现 作者:白宁超 2017年5月18日17:51:37 摘要:关于查重系统很多人并不陌生,无论本科还是硕博毕业都不可避免涉及论文查重问题,这也对学术不正之风起 ...
- java 学习笔记——类之间的关系之封装、继承与多态的详解
封装 一个封装的简单例子 封装就是把对象的属性(状态)和方法(行为)结合在一起,并尽可能隐蔽对象的内部细节,成为一个不可分割的独立单位(即对象),对外形成一个边界,只保留有限的对外接口使之与外部发生联 ...
- 【NLP】Python实例:基于文本相似度对申报项目进行查重设计
Python实例:申报项目查重系统设计与实现 作者:白宁超 2017年5月18日17:51:37 摘要:关于查重系统很多人并不陌生,无论本科还是硕博毕业都不可避免涉及论文查重问题,这也对学术不正之风起 ...
- Java 数学操作类
数学操作类 Math类 数学计算操作类 类属性值 Math.E ^ Math.PI 圆周率 类方法 Math类中,一切方法都是 static 型,因为Math类中没有普通属性. round() 方法 ...
- Java集合---Array类源码解析
Java集合---Array类源码解析 ---转自:牛奶.不加糖 一.Arrays.sort()数组排序 Java Arrays中提供了对所有类型的排序.其中主要分为Prim ...
- 在PHP项目中使用Standford Moss代码查重系统
Standford Moss 系统是斯坦福大学大名鼎鼎的代码查重系统,它可以查出哪些同学提交的代码是抄袭别人的,从而将提交结果拒之门外.它对一切希望使用该系统的人都是开放的,那么在PHP的项目中如何使 ...
- Java:日历类、日期类、数学类、运行时类、随机类、系统类
一:Calendar类 java.util 抽象类Calendar 1.static Calendar getInstance()使用默认时区和语言环境获得一个日历. 2. int get(int ...
- java.io.File类
java.io.File类 1.凡是与输入.输出相关的类.接口等都定义在java.io包下 2.File是一个类.能够有构造器创建其对象.此对象相应着一个文件(.txt .avi .doc .ppt ...
随机推荐
- POJ - 1470 Closest Common Ancestors(离线Tarjan算法)
1.输出测试用例中是最近公共祖先的节点,以及这个节点作为最近公共祖先的次数. 2.最近公共祖先,离线Tarjan算法 3. /* POJ 1470 给出一颗有向树,Q个查询 输出查询结果中每个点出现次 ...
- django flask缓存memcache的key生成方法介绍
去年的一个django项目中,使用了memcache作为系统缓存,并实现多台机器上的缓存共享.配置的cache如下图所示: 最近在项目调试过程中,发现memcache在进行缓存时,使用的key并不是实 ...
- python-----实现微信撤回消息还原
有时候用微信聊天,好友会撤回一些聊天记录,我们好奇,但又没法看,以下代码就可以满足大家的好奇心. #!/usr/bin/env python # -*- coding: utf-8 -*- # @Ti ...
- 洛谷 P2444 [ POI 2000 ] 病毒 —— AC自动机+dfs
题目:https://www.luogu.org/problemnew/show/P2444 AC自动机上 dfs,不走结尾点,如果走出环就是有无限长度的串: RE无数,原来是数组开成 2000 的了 ...
- 腾讯微博 JS-SDK接入
官方文档: open.js api查询 api调试接口 1.接口初始化 加载openjs源代码. <script type="text/javascript" src=&qu ...
- C#即时通讯系统设计与实现(一)
最近学习了一下即时通讯,写了几天了,现在把遇到的问题和得到的心得在这里分享下. 即时通讯,C/S模式,在服务器上架设服务端,服务端是服务形式的,可以设置为开机自启动,客户端进行访问,可以安装在任意一台 ...
- HDU-ACM“菜鸟先飞”冬训系列赛——第9场
Problem A 题意 一对兔子每月生一对兔子,兔子在\(m\)月后成熟,问\(d\)月后有多少兔子 分析 可以发现,第i月的兔子数量取决于第i-1月与i-m月,故 \(a[i]=a[i-1]+a[ ...
- Codeforces Round #386 (Div. 2)G. New Roads [构造][树]
题目链接:G. New Roads 题意:给出n个结点,t层深度,每层有a[i]个结点,总共有k个叶子结点,构造一棵树. 分析: 考虑一颗树,如果满足每层深度上有a[i]结点,最多能有多少叶子结点 那 ...
- python 闭包 Closure 函数作为返回值
一.函数作为返回值 高阶函数除了可以接受函数作为参数外,还可以把函数作为结果值返回. >>> def lazy_sum(*args): ... def sum(): ... ax = ...
- (矩阵快速幂)51NOD 1242斐波那契数列的第N项
斐波那契数列的定义如下: F(0) = 0 F(1) = 1 F(n) = F(n - 1) + F(n - 2) (n >= 2) (1, 1, 2, 3, 5, 8, 13, 21, ...