Computer >> Máy Tính >  >> Lập trình >> Java

Tìm kiếm một chuỗi trong Ma trận bằng cách sử dụng hàm Split trong Java

Để tìm kiếm một chuỗi trong Ma trận bằng cách sử dụng hàm tách, mã như sau -

Ví dụ

import java.util.*;
public class Demo {
   public static int search_string(String[] my_matrix, String search_string){
      for (String input : my_matrix){
         String[] my_value = input.split(search_string);
         if (my_value.length >= 2 || my_value.length == 0){
            return 1;
         }
         else if (my_value.length == 1 && input.length() != my_value[0].length()){
            return 1;
         }
      }
      return 0;
   }
   public static String[] vertical_search(String[] my_matrix){
      String[] vertical_search_value = new String[my_matrix[0].length()];
      for (int i = 0; i < my_matrix[0].length(); i++){
         String temp = "";
         for (int j = 0; j < my_matrix.length; j++)
            temp += my_matrix[j].charAt(i);
         vertical_search_value[i] = temp;
      }
      return vertical_search_value;
   }
   public static void main(String[] args){
      String[] my_matrix = { "This", "Sample", "This" };
      String search_string = "This";
      String[] vertical_matrix = vertical_search(my_matrix);
      int horizontal_search_result = search_string(my_matrix, search_string);
      int vertical_search_result = search_string(vertical_matrix, search_string);
      if (horizontal_search_result == 1 || vertical_search_result == 1)
         System.out.println("The string has been found in the matrix");
      else
         System.out.println("The string couldn't be found in the matrix");
   }
}

Đầu ra

The string has been found in the matrix

Một lớp có tên Demo định nghĩa một hàm có tên là ‘search_String’ chia nhỏ chuỗi và kiểm tra độ dài của chuỗi. Nếu toàn bộ hàng bị chiếm bởi chuỗi, hàm trả về mảng có độ dài bằng 0.

Nếu chuỗi chúng ta đang tìm kiếm có mặt giữa các ký tự của chuỗi, thì độ dài của mảng sẽ lớn hơn 1. Độ dài của mảng có thể là 1 nếu:

  • Chuỗi tìm kiếm xuất hiện trong nửa đầu của mảng.
  • Chuỗi tìm kiếm xuất hiện ở nửa cuối của mảng.
  • Chuỗi tìm kiếm không có trong mảng.

Một hàm khác có tên là "vertical_search" kiểm tra chuỗi tìm kiếm theo chiều dọc trong ma trận. Để tìm kiếm chuỗi trong các cột của ma trận, ma trận được hoán vị và tìm kiếm lại.