Chào mừng đến với Diễn đàn lập trình - Cộng đồng lập trình.
Kết quả 1 đến 4 của 4
  1. #1
    Ngày tham gia
    Sep 2015
    Bài viết
    0

    Cách loại bỏ các phần tử có giá trị trùng nhau (chỉ giữ lại một phần tử trong số các phần tử trùng)


  2. #2
    Trích dẫn Gửi bởi Nguyen Ho
    Mã:
    int i = 0;// khai 1 bien moi de hoi ep du lieu luc duoc vao mang tuc la ar[1],ar[2] vay do
                int t = 0;// khai 1 bien moi dumg de xac dinh duong khi tu lap trung nhau ...co bao nhieu lan trong mang
                string tam;//bien dung de swap du lieu
                int demmang = 0;// dem mang rong bao nhieu ...vi dau phai luc nao cung"abc, abcd, abc, abc, bcd, abc",co the la"abc, abcd, abc, abc, bcd, abc"
                string s = textBox1.Text;//khai 1 bien string de chuyen doi du lieu o textbox1 qua
                s = s.Replace(",", "");//bien doi dau , thanh rong .... phuong thuc nay dung de thanh the  tuc la ky tu ,=rong (a,b)==(ab)
                string[] s2 = s.Split();//tao 1 cai mang string s2...de bat dau chay vong lap foreach de cat coi do rong cua cai chuoi nhap vao la bao nhieu
                foreach (string z in s2)//  +
                {                      //   +
                    if (z.Trim() != "")//   +
                    {                 //    + dang thuc hien 
                   demmang=demmang+1;//     +
                    }               //      +
                }
                string[] ar = new string[demmang];// tao 1 mang ar voi so phan tu da dem truoc trong truong hop vi du cua ban mang la 5  nhung chung ta ko can ghi so 5 vi da dem duoc o tren
                string[] s3 = s.Split();// tuong tu o dem phan tu trong mang ...nhung dot nay no se chuyen du lieu cat duoc vao trong mang ar thay vi la dem 
                foreach (string z1 in s3)//  +
                {                       //   +
                    if (z1.Trim() != "")//   +
                    {                  //    +
                        ar[i] = z1;    //    +dang thuc hien
                        i = i + 1;    //     +
                    }                //      +
                }                   //       +
                for (int j = 0; j < ar.Length; j++)// vong lap for nay dung de kiem tra du lieu 
                {
                    if (ar[j] == "abc")//day la loc du lieu theo kieu xac dinh ....tuc la ta da biet truoc cai can loc "abc"
                    {
                        t = t + 1;// bien nay duoc khai ra nham phu dich vi du ta co la du lai ky tu dau tien vidu abc,bcd,abc no se bo qua ky tu dau tien ...ky tu abc ke tiep no se rang = null...nhin vao cai ke tiep
                        if (t > 1)//khai bien t moi dau = 0 neu neu no da xuat hien 1 lan roi .. thi no moi +1 tu la neu abc bcd abc o cai abc thu 2 gia tri moi bat dau bang 1 thi ta du lai duoc gia tri dau tien 
                        {
                            ar[j] = null;// bien t>1 tuc la 1 ky tu xuat hien 2 lan..thi tai gia tri thu >1 tuc >=2 thi gia tri do bat dau = null(rong
                        }
                    }
                }
                for (int j = 0; j < ar.Length - 1; j++)// ham chay nham muc dich swap du lieu ....de nhung gia tri null ve cuoi mang ...... cho dep voi nhieu cai muc dich khac
                {                                     // neu ban lam mang so thi ban se hieu ....vi day la mang String nen ko can tinh toan nen .....lam cho muc dich khac
                    for (int c = j + 1; c < ar.Length; c++)/eu tinh toan thi ra phai resize cai chuoi lai de sap xep sau nay ...co 1 cai ham la resize mang Int
                    {
                        if (ar[j] == null)// neu gia tri trong o ar[thu j] ma bang null thi swap no ve cuoi mang//
                        {
                            tam = ar[j];
                            ar[j] = ar[c];
                            ar[c] = tam;
                        }
                    }
                }
                for (int j = 0; j < ar.Length; j++)// ham xuat ra text box 2
                {
                    textBox2.Text = textBox2.Text +" "+ar[j];// tai sao lai textbox2.text+ar ma khong phai ar.... vi neu ar ko moi lan lap lai no lai xoa gia tri cu ....lam cach nay la giong nhieu du lieu cu + du lieu moi 
                }


    - - - Nội dung đã được cập nhật ngày 04-01-2015 lúc 01:52 AM - - -

    Kieu o tren la minh lam lun hàm cắt dữ liệu cắt lấy từ 1 nơi nào đó chẳng hạn text box
    con đây là lam kiểu ấn vào la được lun kiều này làm
    lish<string> thay vi lam string[]
    ma gan phan tu chi can add thoi
    ar.add(" gia tri ");
    chứ ko can ar[1]="gia tri "
    xem qua ban nhe
    Mã:
                string s = textBox1.Text;
                s = s.Replace(",", "");
                List<string> ar = new List<string>();
                string[] s3 = s.Split();
                foreach (string z1 in s3)
                {                       
                    if (z1.Trim() != "")
                    {                  
                        ar.Add(z1);    
     
                    }                
                }
                List<string> cat = ar.Distinct().ToList();
                foreach (string catchuoi in cat)
                {
                    textBox2.Text = textBox2.Text+" "+ catchuoi;
                }
    Cảm ơn bạn nha, mình làm được rồi.

  3. #3
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    OK bạn [IMG]images/smilies/smile.png[/IMG] [IMG]images/smilies/wave.gif[/IMG]
    Co gi thắc mắc gửi bài lên tiếp nhé

  4. #4
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    dung linq nhe
    var a=dsChuoi.Distinct()

    - - - Nội dung đã được cập nhật ngày 04-01-2015 lúc 12:08 AM - - -

    ghhhhhhhhhhhhhhhhhhhjjjjhhhhhhhhhhhhhhhhhhhhhhh
    Trích dẫn Gửi bởi nguyenjay90
    dung linq nhe
    var a=dsChuoi.Distinct()

 

 

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •