分析list中有无重复数据且重复了几次

有一个List中存储了很对bean对象 ,

List<CarPeccancy.ROWSDETAILBean> list = peccancy.getROWS_DETAIL();

其中每个bean的数据又是不相同的,要根据bean的name属性来判断是否有重复的数据。

这时我们再创建一个新的List集合存储name属性的值

List<String> carList = new ArrayList<>();
for (int i = 0; i < list.size(); i++) {
     carList.add(list.get(i).getCarnumber());
     }

统计每个name出现的次数

int number = 0;
int not = 0;
for (String temp : carList) {
    int frequency = Collections.frequency(carList, temp);
    if (frequency > 1) {
        number++;
        } else {
        not++;
         }
       }
System.out.println("重复数据:" + number);
System.out.println("无重复数据:" + not);


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
算法分析,常用的数据结构是设计和实现算法的基础,它们对于理解算法效率、优化复杂度至关重要。以下是一些常见的数据结构: 1. **数组(Array)**:固定大小的线性集合,支持常数时间访问元素。主要用于顺序查找和存储连续数据。 2. **链表(Linked List)**:动态分配内存的数据结构,元素不连续,通过指针链接。适合插入和删除操作,但查找效率较低。 3. **栈(Stack)**:一种后进先出(LIFO)的数据结构,常用于函数调用、表达式求值和递归算法。 4. **队列(Queue)**:先进先出(FIFO)的数据结构,应用广泛,如任务调度、消息传递等。 5. **树(Trees)**:非线性数据结构,包括二叉树(搜索、排序)、平衡树(如AVL、红黑树)、堆(优先队列)等,支持高效的查找、插入和删除。 6. **图(Graphs)**:由节点和边组成的复杂网络结构,有无向图、有向图和加权图等形式,用于模拟各种复杂关系。 7. **哈希表(Hash Tables)**:通过哈希函数将键映射到索引位置,支持快速查找、插入和删除操作,平均情况下时间复杂度为O(1)。 8. **堆(Heaps)**:优先队列,主要分为最大堆和最小堆,用于实现高效的选择操作。 9. **字典树(Trie)**:用于字符串的高效存储和查找,常用于自动补全、拼写检查等场景。 10. **集合(Set)**:无序且不重复的元素集合,支持并集、交集和差集等操作。 这些数据结构各有特点,适用于不同的场景和算法需求。在分析算法时,选择合适的数据结构对于优化算法性能至关重要。如果你对某一种数据结构有深入学习的需求或想了解具体应用场景,请告诉我,我会进一步详述。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值