import java.util.ArrayList;
public class TestArrayList {
public static void main(String[] args){
ArrayList tmp=new ArrayList();
tmp.add("111");
tmp.add("111");
tmp.add("111");
tmp.add("111");
tmp.add("111");
tmp.add("111");
tmp.add("111");
tmp.add("111");
tmp.add("222");
tmp.add("222");
tmp.add("222");
tmp.add("111");
for(int i=0;i<tmp.size();i++){
for(int j=tmp.size()-1;j>i;j--){
if(tmp.get(i).equals(tmp.get(j))){
tmp.remove(j);
}
}
}
System.out.println(tmp);
}
}
==============================================================
public static void main(String[] args) {
ArrayList<String> tmp = new ArrayList<String>();
tmp.add("111");
tmp.add("111");
tmp.add("111");
tmp.add("111");
tmp.add("222");
tmp.add("222");
tmp.add("111");
tmp.add("111");
for (int i = 0; i < tmp.size() - 1; i++) {
for (int j = i + 1; j < tmp.size(); j++) {
if (tmp.get(i).equals(tmp.get(j))) {
tmp.remove(j);
j = j - 1;
}
}
}
System.out.println(tmp);
}
删除了,如果不j = j -1,就会跳过下一个了,因为你删除了一个元素,所以,不-1就会跳过一个元素
分享到:
相关推荐
1. **字符串处理**:题目3要求找到不重复的子串,这涉及到字符串遍历和子串查找。而题目4则需要找到两个字符串的最长公共子串,这通常可以通过动态规划的方法解决。 2. **数学运算**:题目6考察的是阶乘中0的数量,...
6. **字符串处理**:KMP算法、Boyer-Moore算法等字符串匹配算法,以及Rabin-Karp和Knuth-Morris-Pratt(KMP)等字符串模式查找算法。 7. **概率和随机化算法**:如Monte Carlo和Las Vegas算法,以及它们在解决计算...
这些题目可能涵盖实际编程问题,如字符串处理、数组操作、链表操作等,用户可以尝试用不同的算法来解决,并比较各自的优劣。 最后,系统还可能包含一些高级主题,如分治策略、回溯法、分支限界法,以及最近热门的...
掌握数组的初始化、遍历、排序等操作,以及字符串处理函数(如strlen、strcpy、strcat等)的使用是必不可少的。 4. **结构体与联合体**:结构体可以组合不同类型的数据,联合体则允许同一内存区域存储不同类型的...
需要注意的是,在实际开发中,要确保正确处理边界情况,例如负数、零以及非常大的整数,同时在处理字符串时要防止内存泄漏。 在C语言编程中,理解和熟练运用这种基础的算法是非常重要的,因为它不仅锻炼了我们的...
5. **字符串处理**:KMP算法、Manacher's Algorithm等字符串匹配算法,以及文本处理相关的问题。 6. **编码技巧**:如何高效地实现代码,减少时间复杂度和空间复杂度,提高程序运行效率。 通过学习和解答这些真题...
6. **字符串处理**:Java的String类提供了丰富的字符串操作方法,理解其不可变性及字符串池的概念也很重要。 编程题部分则会涉及到将理论知识转化为实际编程能力的训练,可能包括: 1. **算法实现**:如排序(冒泡...
这些题目可能要求你在限定时间内实现一个功能,或者解决特定的问题,例如排序算法、数据结构优化、字符串处理等。因此,对基础编程语法和常用数据结构(如数组、链表、栈、队列、树、图)的深入理解至关重要。 其次...
5. **字符串处理**:C++提供了丰富的字符串操作函数,如查找、替换、比较等,这些在文本处理和编码挑战中至关重要。 6. **数据结构**:链表、栈、队列、树、图等基本数据结构的实现,以及基于它们的高级数据结构,...
4. **字符串处理**:字符串在编程中扮演着重要角色,试题可能会涉及字符串比较、模式匹配、编码解码等操作。 5. **文件操作与输入输出**:理解文件读写机制,掌握标准输入输出的使用,这对于处理大量数据或进行I/O...
例如,给定字符串"ACGT",合法的配对有"ATCG"和"GCTA"等,因为"A"始终与"T"配对,"C"始终与"G"配对。 3. **算法思路**:解决这类问题通常涉及动态规划或回溯法。动态规划方法会构建一个二维数组,记录到当前位置的...
Java中的字符串是不可变的,所以了解字符串池也是很重要的。 5. **异常处理**:学习try-catch-finally语句块,理解Checked异常和Unchecked异常的区别,以及何时使用throw和throws关键字。 6. **集合框架**:初步...
1. 字符串转小写:`toLower`函数需要检查源字符串是否为`NULL`,然后分配新的内存来存储小写字符串,最后遍历源字符串并逐个转换成小写。 2. 字符串转整数:`num`函数遍历字符串,每次取出一个字符并将其转换为整数...
8. **字符串与指针**:了解C语言中的字符串是字符数组,字符串常量实际上是由`const char *`类型的指针表示的。 9. **结构体与指针**:学习如何定义结构体,以及如何通过指针操作结构体变量,理解结构体指针在处理...
在C语言中,处理字符串需要熟悉字符串库函数的使用。 数组是相同类型元素的集合,其存储结构固定,访问速度快。特殊矩阵和稀疏矩阵是数组的特殊形式,对于大量零元素的情况,稀疏矩阵可以节省大量存储空间。广义表...
5. **应用实例**:如使用栈实现括号匹配,利用队列处理打印作业,使用哈希表进行字符串查找等。 6. **特殊数据结构**:如红黑树、AVL树等自平衡二叉搜索树,它们确保了插入和删除操作的高效性。 7. **图算法**:如...
12. **算法和数据结构**:C语言是实现算法的理想工具,实例涵盖了排序、查找、图论、字符串处理等算法,以及链表、队列、栈等基本数据结构。 通过《C语言经典实例100题》的学习,你不仅能够巩固理论知识,还能提升...
例如,你可能需要实现一个排序算法(如冒泡排序、选择排序或快速排序),或者解决一个字符串处理的问题。 本压缩包中的资源“新建文件夹”中包含了历年真题及答案和讲解注释,这对于备考者来说是宝贵的参考资料。...
3. **字符串处理**:Java中的String类提供了丰富的字符串操作方法,如concatenation、substring、indexOf、replace等,常用于文本处理和字符串比较。 4. **面向对象**:包括类、对象的创建,继承、封装和多态等概念...
考生需要掌握数组的声明、初始化、遍历以及字符串处理函数(如strlen, strcpy, strcmp等)的使用。 4. **结构体与联合体**:结构体允许将不同类型的变量组合在一起,而联合体则是一种特殊的结构,其所有成员共用同...