国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發(fā)設(shè)計 > 正文

Leetcode刷題

2019-11-14 10:06:43
字體:
供稿:網(wǎng)友

485.Max Consecutive Ones

Description Given a binary array, find the maximum number of consecutive 1s in this array. 給定一個二進制數(shù)組,找出這個數(shù)組中最大的連續(xù)1的個數(shù)

public class Solution { public int findMaxConsecutiveOnes(int[] nums) { int maxNumber = 0,number = 0; int len = nums.length; //遇0則變0,遇1則加1 for(int i = 0;i < len; i++){ if(nums[i] == 0){ number = 0; } else{ number++; if(maxNumber < number) maxNumber = number; } } return maxNumber; }}public class Solution { public int findMaxConsecutiveOnes(int[] nums) { int maxNumber = 0,number = 0; int len = nums.length; //遇1則加1,遇0則變0 for(int i = 0;i < len; i++){ if(nums[i] == 1){ number ++; } else{ if(number > maxNumber){ maxNumber = number; } number = 0; } } //注意num[len - 1]如果是1的話沒有執(zhí)行給maxNumber賦值的語句 if(number >maxNumber){ maxNumber = number; } return maxNumber; }}

461. Hamming Distance

Description The Hamming distance between two integers is the number of positions at which the corresponding bits are different. 給定兩個整數(shù),求其對應(yīng)二進制位上是不同數(shù)字的個數(shù)。

public int hammingDistance(int x, int y) { int distance = 0; int k = x ^ y; //調(diào)用Integer類中的bitcount方法求一個整數(shù)的二進制中1的個數(shù) distance = Integer.bitCount(k); return distance; }public int hammingDistance(int x, int y) { int distance = 0; int k = x ^ y; System.out.PRintln(k); while(k != 0){ //和1相與,結(jié)果為1則最低位為1,結(jié)果為0則最低位為0 if( (k & 1) == 1) distance ++; k = k >> 1;//右移 } return distance;}//逐位異或public int hammingDistance(int x, int y) { int distance = 0; while(x !=0 || y!=0){ if(((x & 1) ^ (y & 1)) == 1){ distance ++; } x = x >> 1; y = y >> 1; } return distance; } //(借鑒)利用遞歸 public int hammingDistance(int x, int y) { if((x ^ y) == 0) return 0; return (x ^ y) % 2 + hammingDistance(x >> 1, y >> 1); }

感想:1. 二進制位運算要充分利用二進制運算符,~,&,|,^(異或,相同為0,不同為1) 2. 巧妙利用遞歸簡化代碼


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 阿合奇县| 永善县| 兴宁市| 桂阳县| 麻阳| 六枝特区| 祁东县| 武陟县| 汾西县| 郧西县| 丹江口市| 垦利县| 玉树县| 饶阳县| 乌拉特后旗| 鹤峰县| 新乐市| 邹平县| 五家渠市| 普陀区| 关岭| 乐清市| 西盟| 阳信县| 岑巩县| 承德市| 将乐县| 清新县| 灌阳县| 唐河县| 穆棱市| 秀山| 柏乡县| 昌宁县| 齐齐哈尔市| 嘉鱼县| 岫岩| 东明县| 玉环县| 惠来县| 黄山市|