Home > Thuật giải tìm kiếm > Find Array : So sánh trong mảng A những giá trị trong mảng B

Find Array : So sánh trong mảng A những giá trị trong mảng B

September 13, 2012 Leave a comment Go to comments

Nguon:

Ly thuyet: http://msdn.microsoft.com/en-us/library/d9hy2xwa.aspx

vd cu the: http://ubuntuforums.org/showthread.php?t=799534

cach khai bao mang: http://msdn.microsoft.com/en-us/library/aa288453%28v=vs.71%29.aspx

Khái niệm:

–          Hàm Find<T>() : tìm kiếm trong mảng T[], với Predicate<T> là 1 hàm định nghĩa điều kiện để so sánh [giá trị nhập vào Preducate<> chính là phần tử trong mảng T[]] à Trả về 1 giá trị đầu tiên tìm thấy.

–          Hàm FindAll<T>() : tìm kiếm trong mảng T[], với Predicate<T> là 1 hàm định nghĩa điều kiện để so sánh [giá trị nhập vào Preducate<> chính là phần tử trong mảng T[]] à Trả về tất cả giá trị được tìm thấy.

public static T Find<T>(
        T[] array,
        Predicate<T> match
)
public static T FindAll<T>(
        T[] array,
        Predicate<T> match
)

VD:

public static void Main () {

  int[] numbers = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };        

  int[] odds = Array.FindAll<int>(numbers, IsOdd);
}

private static bool IsOdd(int number) //Ham IsOld dinh nghia dieu kien tim kiem trong mang numbers
 {

      return ((number % 2) != 0); // DK: neu phan tu trong mang khong chia het cho 2: hien thi ket qua

}
Ket qua tra ve:
Odds = {1,3,5,7,9}

Mot vi du khac:

using System;

namespace Find
{
  class Find
  {
    public static string searchString;

    private static bool FindWordstring word )
    {
      return word == Find.searchString;
    }

    public static void Main ()
    {
      string sentence "This is a Book";

      string[] word sentence.Split();

      Find.searchString "is";

      string[] find = Array.FindAll<string>( wordFindWord );

      int i find.Length;

      Console.WriteLine("Number of instances of the word '" Find.searchString "' is: " i);
    }
  }

  1. No comments yet.
  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: