0
点赞
收藏
分享

微信扫一扫

智能守护校园餐桌:校园阳光食堂视频AI监控智能管理方案

素的盐 2024-07-24 阅读 21

前言

经过前期的基础训练以及部分实战练习,粗略掌握了各种题型的解题思路。后续开始专项练习。

描述

实现原理与步骤

异或演化公式推导

encoded[i] = arr[i] ^ arr[i + 1]

=>encoded[i]^arr[i]=arr[i]^arr[i]^arr[i+1]

=>encoded[i]^arr[i]=0^arr[i+1]

=>encoded[i]^arr[i]=arr[i+1]

=>arr[i]=encode[i-1]^arr[i-1]

arr[0]=first

代码实现

class Solution {
    /**
     * 异或的性质:
     * 1.异或自己为0
     * 2.异或0等于自身
     * 3.异或满足交换律和结合率
     * encoded[i]=arr[i] ^ arr[i+1]
     *=> encoded[i]^arr[i]=arr[i+1]
     */
    public int[] decode(int[] encoded, int first) {
        int n=encoded.length+1;
        int[] arr=new int[n];
        arr[0]=first;
        for(int i=1;i<n;i++){
            arr[i]=arr[i-1]^encoded[i-1];
        }
        return arr;
    }
}
举报

相关推荐

0 条评论