LeetCode练习(数据结构)每日一题-创新互联

题目:

给你一个整数数组 nums。如果任一值在数组中出现 至少两次 ,返回 true;如果数组中每个元素互不相同,返回 false

在山城等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供做网站、成都网站建设 网站设计制作定制开发,公司网站建设,企业网站建设,高端网站设计,营销型网站建设,成都外贸网站建设公司,山城网站建设费用合理。

算法思想: 1、思想一:将数组中的数升序(降序)排列,依次比较相邻的两个数,如果相同,则返回True;若遍历完成后还没有返回True则返回False。

代码如下:

①python代码 

class Solution(object):
    def containsDuplicate(self, nums):
        """
        :type nums: List[int]
        :rtype: bool
        """
        nums.sort()#升序排列
        n=len(nums)#列表长度

        for i in range(n-1):
            if nums[i]==nums[i+1]:
                return True  #存在相邻相同元素
        return False    #遍历完全后没有发现相邻相同元素

if __name__ == '__main__':
    s=Solution()
    nums=[1,2,5,7,5]  #示例列表
    print(s.containsDuplicate(nums))  #调用方法输出结果

②java代码

package demo;

import java.util.Arrays;

//第一种方法
public class leetcode1 {
    public boolean containsDuplicate(int[] nums) {
        int n=nums.length;
        Arrays.sort(nums);
        for(int i=0;i
2、思想二:利用哈希表中不能存放相同元素数据,将数组中的元素逐个存入哈希表,出现add方法返回False时,代表出现了相同元素返回True,若一直没有出现,则证明没有重复元素,最后返回False

java代码如下:

package demo;

import java.util.HashSet;

public class leetcode1 {
    public boolean containsDuplicate_other(int[] nums) {
        HashSet hset=new HashSet();
        for(int i:nums){
            if(!hset.add(i)){
                return true;
            }
        }
        return false;
    }
}



class test{
    public static void main(String arg[]){
        leetcode1 l=new leetcode1();
        int[] nums={1,2,5,4};
        System.out.println(l.containsDuplicate_other(nums));

    }
}

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


本文名称:LeetCode练习(数据结构)每日一题-创新互联
网页地址:http://csdahua.cn/article/dhdogi.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流