Power of Two

 /**
  * LeetCode: Power of Two
  * Given an integer, write a function to determine if it is a power of two.
  *
  * @author LuoPeng
  * @time 2015.8.3
  *
  */
 public class PowerOfTwo {

     public boolean isPowerOfTwo(int n) {

         boolean result = false;
         if ( n == 1) {
             result = true;
         } else if ( n > 1) {
             while ( n % 2 == 0) {
                 n = n/2;
             }
             result = (n==1)?true:false;
         }
         return result;
     }

 }

Summary Ranges

 /**
  * LeetCode: Summary Ranges
  * Given a sorted integer array without duplicates, return the summary of its ranges.
  * For example, given [0,1,2,4,5,7], return ["0->2","4->5","7"].
  *
  * If the next value is equal to the current value+1, then the next value should be merged together.
  * Input:[0, 1, 5, 7, 8]; output:["0->1", "5", "7->8"
  * Input:[3, 5, 6, 7, 9]; output:["3", "5->7", "9"]
  *
  * @author LuoPeng
  * @time 2015.8.4
  *
  */
 public class SummaryRanges {

     /**
      *
      * @param nums
      * @return
      */
     public List<String> summaryRanges(int[] nums) {

         if ( nums == null) {return null;}

         List<String> result = new ArrayList<String>();
         if ( nums.length != 0) {
             String temp = null;
             int length = nums.length;
             int start = 0;
             for ( int i = 1; i < length; i++) {
                 if ( nums[i] - nums[i-1] != 1) {
                     if ( i == start+1) {
                         // the value should be itself
                         temp = "" + nums[start];
                     }  else {
                         temp = nums[start] + "->" + nums[i-1];
                     }
                     result.add(temp);
                     start = i;
                 }
             }

             // the last element
             if ( length == start+1) {
                 temp = "" + nums[start];
             }  else {
                 temp = nums[start] + "->" + nums[length-1];
             }
             result.add(temp);
         }

         return result;

     }

 }

LeetCode Day2的更多相关文章

  1. 【LeetCode算法题库】Day2:Median of Two Sorted Arrays & Longest Palindromic Substring & ZigZag Conversion

    [Q4] There are two sorted arrays nums1 and nums2 of size m and n respectively. Find the median of th ...

  2. leetcode每日刷题计划-简单篇day2

    今天数模比赛爆肝&操作系统大作业 脖子疼orz先把题过了保证flag不倒..个别细节回头看吧 Num 13 罗马数字转整数 Roman to Integer 一遍提交过,开始编译出了点问题 具 ...

  3. 我为什么要写LeetCode的博客?

    # 增强学习成果 有一个研究成果,在学习中传授他人知识和讨论是最高效的做法,而看书则是最低效的做法(具体研究成果没找到地址).我写LeetCode博客主要目的是增强学习成果.当然,我也想出名,然而不知 ...

  4. 【从零开始学BPM,Day2】默认表单开发

    [课程主题]主题:5天,一起从零开始学习BPM[课程形式]1.为期5天的短任务学习2.每天观看一个视频,视频学习时间自由安排. [第二天课程] Step 1 软件下载:H3 BPM10.0全开放免费下 ...

  5. LeetCode All in One 题目讲解汇总(持续更新中...)

    终于将LeetCode的免费题刷完了,真是漫长的第一遍啊,估计很多题都忘的差不多了,这次开个题目汇总贴,并附上每道题目的解题连接,方便之后查阅吧~ 477 Total Hamming Distance ...

  6. [LeetCode] Longest Substring with At Least K Repeating Characters 至少有K个重复字符的最长子字符串

    Find the length of the longest substring T of a given string (consists of lowercase letters only) su ...

  7. Leetcode 笔记 113 - Path Sum II

    题目链接:Path Sum II | LeetCode OJ Given a binary tree and a sum, find all root-to-leaf paths where each ...

  8. Leetcode 笔记 112 - Path Sum

    题目链接:Path Sum | LeetCode OJ Given a binary tree and a sum, determine if the tree has a root-to-leaf ...

  9. Leetcode 笔记 110 - Balanced Binary Tree

    题目链接:Balanced Binary Tree | LeetCode OJ Given a binary tree, determine if it is height-balanced. For ...

随机推荐

  1. UGUI 锚点

    今天我们来学习下UGUI的锚点, 他是做什么的呢?  基本上就是用于界面布局. 1. 1个控件对应1个描点. 2. 描点分成四个小叶片,  每1个叶片 对应 控件四边框的角点 3. 不管屏幕如何放大缩 ...

  2. EasyUI DataGrid编辑单元格时使用combogrid

    仅提供一段columns配置代码供参考: conditions对象是一个已赋值的数组对象集合.下拉框数据可直接使用conditions数据,也可以通过url获取. columns : [[ { fie ...

  3. Bridging signals(二分 二分+stl dp)

    欢迎参加——每周六晚的BestCoder(有米!) Bridging signals Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 6 ...

  4. unity tips

    1.在unity 的mecanim中,如果一个动画指向两个或两个以上的动画,那么在inspector中,transitions中可以看到所有的过渡路径,这些路径是有先后顺序的.

  5. win7 下面使用任务计划程序执行php脚步

    1.操作系统中点击开始->所有程序->附件->系统工具->任务计划程序 2.如下图 3.下一步,如图: . 4.下一步,如图 5.下一步,如下图: 6.这样设置好以后,就可以了 ...

  6. 谈谈javascript的函数表达式及其应用

    我们都知道定义函数的方式有两种,一种是函数声明,另外一种就是函数表达式. 函数声明 语法为:function关键字后跟函数名.例如: function functionName(arg0) { //函 ...

  7. Android开发_关于如何屏蔽Home键

    今天在遇到一个要屏蔽Home键的问题,研究一上午终于解决,方法记录于下: 在Android2.3版本以下重写以下方法就能屏蔽Home键: public void onAttachedToWindow( ...

  8. Emmet 语法探析

    Emmet 语法探析 Emmet(Zen Coding)是一个能大幅度提高前端开发效率的一个工具. 大多数编辑器都支持Snippet,即存储和重用一些代码块.但是前提是:你必须先定义 这些代码块. E ...

  9. struts1:Struts配置文件初解

    struts-config.xml是Struts的核心文件.该文件可配置各种组件,包括,FormBeans,Actions,ActionMappings,全局转发GlobalForwards,数据源D ...

  10. [Linked List]Partition List

    Total Accepted: 53879 Total Submissions: 190701 Difficulty: Medium Given a linked list and a value x ...