[Java]Array跟list的用法

 java.util.ArrayList 類提供了可調整大小的數組,

並實現了List接口。以下是關於ArrayList中的要點:


  • 它實現了所有可選的列表操作,並且還允許所有元素,包括空值null。

  • 它提供了一些方法來操作內部用來存儲​​列表的數組的大小。

  • 相較於LinkedList實現的常數因子較低。










ArrayList<資料型態> arrlist = new ArrayList<資料型態>(資料大小) ; //資料大小沒寫代表無限制


    

    ArrayList<String> arrlist = new ArrayList<String>() ;

    ArrayList<Integer> arrlist = new ArrayList<Integer>() ;

    ArrayList<Boolean> arrlist = new ArrayList<Boolean>() ;



參考來源:http://tw.gitbook.net/java/util/java_util_arraylist.html



//判斷矩陣內的數值+額外的數值是否超過矩陣的最大值

如果大於等於 則為 true 反之 false

//輸出一個list<boolean>



Given the array candies and the integer extraCandies, where candies[i] represents the number of candies that the ith kid has.

For each kid check if there is a way to distribute extraCandies among the kids such that he or she can have the greatest number of candies among them. Notice that multiple kids can have the greatest number of candies.

 

Example 1:

Input: candies = [2,3,5,1,3], extraCandies = 3
Output: [true,true,true,false,true] 
Explanation: 
Kid 1 has 2 candies and if he or she receives all extra candies (3) will have 5 candies --- the greatest number of candies among the kids. 
Kid 2 has 3 candies and if he or she receives at least 2 extra candies will have the greatest number of candies among the kids. 
Kid 3 has 5 candies and this is already the greatest number of candies among the kids. 
Kid 4 has 1 candy and even if he or she receives all extra candies will only have 4 candies. 
Kid 5 has 3 candies and if he or she receives at least 2 extra candies will have the greatest number of candies among the kids. 

Example 2:

Input: candies = [4,2,1,1,2], extraCandies = 1
Output: [true,false,false,false,false] 
Explanation: There is only 1 extra candy, therefore only kid 1 will have the greatest number of candies among the kids regardless of who takes the extra candy.

Example 3:

Input: candies = [12,1,12], extraCandies = 10
Output: [true,false,true]

 

Constraints:

  • 2 <= candies.length <= 100
  • 1 <= candies[i] <= 100
  • 1 <= extraCandies <= 50

class Solution {
    public List<Boolean> kidsWithCandies(int[] candies, int extraCandies) {
      

          ArrayList<Boolean> arrlist = new ArrayList<Boolean>() ;
        
        int max = 0;
        
         for(int i = 0 ; i<candies.length;i++ ){
            if(candies[i]>=max){
              max=candies[i];
            }
        }
        
        
        
        for(int i = 0 ; i<candies.length;i++ ){
            
            if(extraCandies+candies[i]>=max){
                arrlist.add(true);
            }
            else{
                 arrlist.add(false);
            }
            
        }
        
        return arrlist;
        
    }
}




留言

這個網誌中的熱門文章

[HTML]標籤-下

論P, NP, NP-Complete, NP-Hard問題

[Python]基礎課程

[系統]解除電腦限制頻寬

[HTML]標籤-上

[AlaSQL] 多data查詢+累計

How to Check the MySQL Version

[SQL Sever] 日期時間

推薦使用的9款編程字體

類別型態 vs 基本型態