2022-09-26

本文通过代码实现SpringIoc容器思想,并利用归并排序解决逆序数对问题,完成LeetCode第2539题。文章分享了从09:00到14:00的学习经历及成果。

学习目标:

通过代码体验Spring Ioc容器的思想

通过归并排序法解决求解逆序数对数的问题


学习内容:

通过代码体验了Spring Ioc容器的思想,并且通过构造方法完成了对象实例化。

通过代码完成了求解逆序数对数的问题,并且完成了leetcode上的第2539道问题

public class leetcode51 {

    public int reversPairs(int[] nums){
        int[] temp = new int[nums.length];
        return sort(nums,0,nums.length-1,temp);
    }
    private int sort(int[] arr,int l,int r,int[] temp){
        if(l>=r)
            return 0;
        int res=0;
        int mid=l+(r-l)/2;
        res+=sort(arr, l, mid, temp);
        res+=sort(arr, mid + 1, r, temp);
        if(arr[mid]>arr[mid+1]){
            res+=merge(arr,l,mid,r,temp);
        }return res;
    }
    private int merge(int[] arr,int l,int mid,int r,int[] temp){
        System.arraycopy(arr,l,temp,l,r-l+1);
        int i=l;
        int j = mid + 1,res=0;
        //每轮循环为arr[k]赋值
        for(int k=l;k<=r;k++){
            if(i>mid){
                arr[k] = temp[j];j++;
            }else if(j>r){
                arr[k]=temp[i];i++;
            }else if(temp[i]<=temp[j]){
                arr[k]=temp[i];i++;
            }else{
                res+=mid-i+1;
                arr[k]=temp[j];j++;
            }
        }
        return res;
    }
}

学习时间:

09:00-10:30 11:00-14:00


学习产出:

通过实践体验了Spring Ioc这种思想,并且通过归并排序法解决了leetcode上的实际问题。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值