1. 程式人生 > >計算陣列中相同元素的個數,以及陣列總的元素數(重複元素算一個)

計算陣列中相同元素的個數,以及陣列總的元素數(重複元素算一個)

一個數組,其中包含重複的元素,計算出重複元素的個數,以及所有元素的個數,重複的元素算一個

陣列需要排序
ArrayList<String> list = new ArrayList<String>();
        list.add("0");
        list.add("0");
        list.add("1");
        list.add("1");
        list.add("1");
        list.add("2");
       
        int flag = 0;
        String record;
        int count = 0;
        record = list.get(0).toString();// 將第0個元素先放入record中
        List<String> num = new ArrayList<String>();
        int size = list.size();
        for (int i = 0; i < size; i++)
        {
            if (!list.get(i).equals(record))
            {
                num.add(record + "相同的個數是:" + count);
                // 將新出現的不同元素賦給record
                record = list.get(i);
                // count重置為1,開始重新計數
                count = 1;
                flag++;
            }
            //記錄相同數的數量
            else
            {
                count++;
            }
           
            // 記錄最後一個
            if (i == size - 1)
            {
                num.add(record + "相同的個數是:" + count);
                flag++;
            }
        }
       
       
        System.out.println("元素個數:" + flag + "");
       
        for (int j = 0; j < num.size(); j++)
        {
            System.out.println(num.get(j));
        }

相關推薦

js 剔除陣列相同的值合併陣列相同

實現效果如:["2013-01","2013-02","2013-03"] 程式碼如下: var a = ["2013-01","2013-01","2013-02","2013-02","2013-02","2013-03","2013-03"]; Array.pro

計算陣列相同元素個數以及陣列總的素數(重複元素一個)

一個數組,其中包含重複的元素,計算出重複元素的個數,以及所有元素的個數,重複的元素算一個 陣列需要排序 ArrayList<String> list = new ArrayList<String>();         list.add("0"

shell獲取字串長度的方法獲取陣列元素個數獲取陣列元素陣列遍歷

有一個變數var,其值為abbbbsdadhkajsd,設它的長度為len,則用shell獲取此字串的長度,方法如下: len=${#var} 有一個數組A=(a b c d e f) ${A[0]}代表陣列A中的第一個元素a, ${A[@]}是陣列A中的全部元素, ${#

刪除陣列相同的數統計兩個陣列重複數個數並把不同數找出來

#include<iostream> using namespace std; #define N 9 #define M 7 int del(int len,int array[]); int compare_array( int len1, int arra

只使用指向二叉樹的根的一個指標T計算T節點的個數T樹葉的片數T滿節點的個數

資料結構與演算法分析——c語言描述 練習4.28  答案 int countNodes(AvlTree t) { if (t == NULL) return 0; return countN

輸入一個數組和一個數字陣列查詢兩個數使得它們的和正好是輸入的那個數字 時間複雜度O(NlogN)

/* *[email protected] 轉載請註明出處 *題目:輸入一個數組和一個數字,在陣列中查詢兩個數, *使得它們的和正好是輸入的那個數字。 *如果有多對數字的和等於輸入的數字,輸出任意一對即可。 *例如輸入陣列1、2、4、7、11、15和數字15。由於

N個數從每個陣列取出一個數組成一個序列輸出所有可能的情況

這個問題是在xx公司的筆試題上遇到的,當時沒有做出來,下來的時候研究了一下這個題。發現這個問題需要用遞迴的方法去求解這個問題。 程式碼如下: import java.util.ArrayList; import java.util.List; public class So

輸入一個已經按升序排序過的陣列一個數字陣列查詢兩個數使得它們的和正好是輸入的那個數字。

題目:輸入一個已經按升序排序過的陣列和一個數字,在陣列中查詢兩個數,使得它們的和正好是輸入的那個數字。 要求時間複雜度是 O(n)。如果有多對數字的和等於輸入的數字,輸出任意一對即可。例如輸入陣列 1、2、4、7、11、15 和數字 15。由於 4+11=15,因此輸出 4

C語言向有序陣列插入一個數使該陣列仍保持有序

#include<stdio.h> int main() {     int n,i,j,t,k;     printf("您喜歡的陣列長度:\n");     scanf("%d",&n);     int a[n],b[n+1];     printf("您喜歡的有序陣列:\n");

陣列分割:陣列大於某個數元素被分為一類小於等於某個數元素被分為另一類

#include<stdio.h> #define MAX 100000 int A[MAX],n; int partition(int p,int r){ int x,i,j,t; x= A[r]; i = p-1; for(j=p;j<r;j++){ if(A[

陣列有n個數要將他們順序迴圈向後移k位即前面的元素向後移k位

方法一:#include <stdio.h>#include <stdlib.h>int main(){int k,i,n,a[100]={0},b[100]={0};scanf("%d %d",&n,&k);for(i=0;i<

找出兩個陣列相同元素不排序直接兩次迴圈取出

import java.util.ArrayList; import java.util.HashMap; import java.util.List; public class Test{ /** * 獲取兩個整型陣列之間的重複元素集合 * @param a

給定一個整型陣列找到主元素它在陣列的出現次數嚴格大於陣列元素個數的三分之一。

class Solution { public: /* * @param nums: a list of integers * @return: The majority n

CF988 C. Equal Sums【map+pair/hash/任選兩個序列兩個序列都除去他們的一個數使的總和相同

相同 value can 個數 sca code esp 分析 return 【鏈接】:CF988C 【題意】:在n個序列中任選兩個序列,兩個序列都除去他們中的一個數,使的總和相同 【分析】:map

C++找出一個二維陣列的鞍點即該位置上的元素在該行上最大在該列上最小(也可能沒有鞍點)

今日正式用csdn部落格記錄,回顧我所學到的知識,分享一些我的人生感悟和自身經歷。也希望未來通夠過此平臺和更多喜愛程式設計的人交流學習。 道聽途說再加上自己的感悟,認為程式設計最重要的是思想,而不是語言本身,語言只是個工具。所以我們得先學思想。遇到問題,應該先想如果是自己去做會怎麼處理,但我們不

java去除兩個陣列相同元素

import java.util.*; /** * 陣列去重 * <p> * Created by Cheung on 2016/4/14. */ public class Test01 { public static void main(String[] args)

一個輸入的陣列長度為101陣列範圍[1,100]存在一個數重複找出重複的數

  /********************************************* *函式功能: 一個輸入的陣列中長度為101,陣列範圍[1,100],存在一個數重複,找出重複的數 *引數說明 * 輸入: [1,2,4,5,6,...,39,39,40,41,

JS獲取兩個陣列相同元素

<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> </head> <body> <

關於刪除陣列相同元素一個小技巧

如果說到刪除陣列中的相同元素,比如這裡定義一個數組var arr=[1,1,2,2,3,3,3],我想要刪除陣列中的2,那麼應該怎麼做呢。大家都會想到使用for迴圈就可以了,of course .  var arr=[1,1,1,2,2,2,3,3,3,3]; for (var i

陣列任意n個數的全排列(DFS)以及任意n個數的組合

        今天做了poj1270這道題,採用了深度優先搜尋,確實啟發了我,無意中想了一個這麼一個問題:求陣列中任意n個數的全排列是不是也可以用深度優先去搜索(我理解這是一種深度搜索,不知道對不對)。 程式碼如下: #include<iostream> #i