IMG-LOGO
×

Tài Liệu Học

Khoá học lập trình Java Core căn bản (OOP)

Hướng Dẫn Cài Đặt Môi Trường

[Video] - Hướng dẫn cài đặt môi trường [Video] - Hướng dẫn tạo dự án Hello World [Video] Hướng dẫn phát hành dự án java - Lập trình Java căn bản

Khai Báo Biến & Mệnh Đề Điều Kiện & Vòng Lặp

[Video] - Khai báo biến & Toán tử trong Java [Video] - Tìm hiểu về Scanner, mệnh đề điều kiền if, else, switch trong java [Video] Tìm hiểu Loop (for, while, do while) - Lập trình Java căn bản

Array

[Video] Tìm hiểu về mảng (array) và List, ArrayList trong Java - Lập trình Java căn bản [Video] Hướng dẫn Collections Java | List & ArrayList Java | Vector Java | Map & Hashmap Java | String Java [Video] Test - Tìm kiếm chuỗi trong chuỗi

OOP - Tích Chất Đóng Gói & Kế Thừa

[Video] Tìm hiểu về Class và Object trong lập trình Java - Lập trình Java căn bản [Video] OOP - Tích chất bao đóng - Kế thừa trong Java - Lập trình Java căn bản [Video] Kế thừa OOP - Lập trình java - Lập trình Java căn bản [Video] OOP - Tính Chất Đa Hình - Tính Chất Trừu Tượng - Lập Trình Java Căn Bản [Video] Chu vi + Diện tích hình tròn và hình chữ nhật - lập trình Java căn bản [Video] Chữa bài tập kế thừa hình tròn + hình chữ nhật - lập trình Java căn bản - Đề 2 [Video] Quản Lí Cán Bộ [Video] Chũa bài tập Employee & StudentMark & Product trong lập trình OOP- lập trình Java căn bản [Video] Quản lý bể bơi bằng Java - Swimming Pool in Java [Video] Quản lý phòng tập GYM - Java basic [Video] Hướng dẫn chữa bài tập quản lý sách - lập trình java [Video] Chữa bài tập quản lý sinh viên - lập trình hướng đối tượng java [Video] Java Basic- OOP - Tổng hợp - Quản lý sinh viên - giáo viên bằng java - Phần 2

OOP - Interface

[Video] Interface - OOP lập trình java - Lập trình Java căn bản [Video] Java Basic- OOP - Tổng hợp - Quản lý sở thú [Video] Java Basic- OOP - Interface - Quản lý mèo (cat) trong java [Video] TEST- Chương trình quản lý rạp chiếu film bằng java [Video] Java basic- Overview - viết chương trình điều khiển TIVI bằng java [Video] Java basic- Overview - Viết chương trình quản lý xe car bằng java [Video] Hướng dẫn cú pháp Lambda Java | Tạo anonymous class Java | Interface Java & Abstract Java [Video] Chuyển DateTime sang String Java|Chuyển String sang DateTime Java | Base64 Java|MD5 Java|Cipher Java [Video] Hướng dẫn tìm hiểu Singleton Design Pattern Java | Singleton Object Java | OOP Java cho người mới

Examination & Test

[Video] Java Basic- Overview - Tổng hợp bài tập ôn luyện java basic - Kiểm tra 60 phút [Video] Exam - Kiểm tra 60 phút lập trình OOP - Quản lý thiết bị máy tính - Lập trình OOP

Java Swing

[Video] Hướng dẫn học Java Swing | Ví du quản lý sinh viên Java | Java Swing cho người mới bắt đầu

Ôn Tập Tổng Quát Java Basic

[Video] Phần mềm quản lý trường học - giảng dạy [Video] Optimize (Tối ưu code) - Phần mềm quản lý trường học - giảng dạy [Video] Java Basic- Test 60 phút lập trình java căn bản - Phần mềm quản lý bệnh nhân COVID-19 (2020 - TOOANG) [Video] bài tập quản lý xe cộ + quản lý bãi đỗ xe - lập trình java [Video] Java Basic - Quản lý ATM - Quản lý tài khoản ngân hàng




Trang Chủ Java Basic Test - Tìm kiếm chuỗi trong chuỗi

Test - Tìm kiếm chuỗi trong chuỗi

by GokiSoft.com - 20:22 27/03/2020 12,316 Lượt Xem

Viết chương trình như sau

- Thực hiện nhập từ bàn phím 1 chuỗi và lưu vào biến : sourceStr

- Thực hiện nhập từ bàn phím 1 chuối tiếp theo và lưu vào biến : searchingStr

Yêu cầu: Tìm kiếm số lần xuất hiện chuỗi searchingStr trong chuỗi sourceStr và in ra vị trí xuất hiện của chuỗi đó trong sourceStr

Bình luận



Chia sẻ từ lớp học

Trần Văn Điệp [Teacher]

Ngày viết: 19:32 30/03/2020



/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package lession7.string;

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

/**
 *
 * @author Diep.Tran
 */
public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        String sourceStr;
        String searchingStr;
        System.out.println("Nhap chuoi nguon: ");
        sourceStr = scan.nextLine();
        System.out.println("Nhap chuoi tim kiem: ");
        searchingStr = scan.nextLine();
        //tim ra so lan xuat hien searchingStr trong sourceStr & index
        //indexOf >= 0 -> index xuat hien cua searchingStr trong source
//        int index = sourceStr.indexOf(searchingStr);
//        System.out.println("index: " + index);
        //Cach 1: ko toi uu => for tu dau toi cuoi
        int count = 0;
        List<Integer> list = new ArrayList<>();
        for (int i = 0; i < sourceStr.length(); i++) {
            int index = sourceStr.indexOf(searchingStr, i);
            if(index >= 0 && !list.contains(index)) {
                count++;
                list.add(index);
                System.out.println("index: " + index);
            }
        }
        System.out.println("Count: " + count);
        //Cach 2 : Toi uu source & performent
        System.out.println("======= Cach 2 ============");
        count = 0;
        for (int i = 0; i < sourceStr.length();) {
            int index = sourceStr.indexOf(searchingStr, i);
            if(index >= 0) {
                count++;
                i = index + 1;
                System.out.println("index: " + index);
            } else {
                break;
            }
        }
        System.out.println("Count: " + count);
    }
}


hoangkhiem [C1907L]

Ngày viết: 17:33 30/03/2020



/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package BaiTap273;

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

/**
 *
 * @author Admin
 */
public class Test {
    public static void main(String[] args) {

        Scanner nhap = new Scanner(System.in);
        String sourceStr ;
        String searchingStr ;
        int dem = 0;
        int demphu = 0;
        int indexStr = 0;
        List<Integer> VTC = new ArrayList<>();

        System.out.print("Nhập chuỗi ban đầu : ");
        sourceStr = nhap.nextLine();

        System.out.print("Nhập chuỗi tìm kiếm: ");
        searchingStr = nhap.nextLine();

        do{
            demphu++;
            //Truyền vào chuỗi con và chỉ số bắt đầu
            if (sourceStr.indexOf(searchingStr, indexStr) != -1) {
                //
                dem++;
                indexStr = sourceStr.indexOf(searchingStr, indexStr);
                //indexStr Cho kết quả trả về vào mảng
                VTC.add(indexStr);
                indexStr++;
            }
            //neu if không sảy ra dem không tăng và demphu không tăng và trả ra màn hình kết quả không tìm được
        } while (dem == demphu);

        System.out.println("KẾT QUẢ TÌM KIẾM");
        if (dem > 0) {
            System.out.println("Số lần chuỗi xuất hiện là: " + dem);
            for (int i = 0; i < VTC.size(); i++) {
                System.out.format("\nVị trí xuất hiện lần %d là: %d", i + 1, VTC.get(i));
            }
        } else {
            System.out.println("Kết quả không tìm được");
        }
    }
}


Nguyễn Anh Đức [community]

Ngày viết: 16:24 30/03/2020




package test;



import java.util.ArrayList;

import java.util.List;

import java.util.Scanner;





public class Main {

    

    public static void main(String[] args){

        

        Scanner scanner = new Scanner(System.in);

        String sourceStr, searchingStr;

        int count = 0;

        int lastCount = 0;

        int indexStr = 0;

        List<Integer> countArr = new ArrayList<>();



        System.out.print("Nhập chuỗi: ");

        sourceStr = scanner.nextLine();

        

        System.out.print("Nhập chuỗi tìm kiếm: ");

        searchingStr = scanner.nextLine();

        

        do{

            lastCount++;

            if(sourceStr.indexOf(searchingStr, indexStr) != -1){

                count++;

                indexStr = sourceStr.indexOf(searchingStr, indexStr);

                countArr.add(indexStr);

                indexStr++;

            }

        }while(count == lastCount);

        

      

        

        if(count > 0){

            System.out.println("Số lần chuỗi xuất hiện là: " + count);

            for(int i = 0; i < countArr.size(); i++){

                System.out.format("\nVị trí xuất hiện lần %d là: %d", i + 1, countArr.get(i));

            }

        }else{

            System.out.println("Chuỗi searchingStr không xuất hiện lần nào trong trong chuỗi sourceStr");

        }

    }

}



Nguyen Duc Viet [C1907L]

Ngày viết: 00:22 29/03/2020



public class Main { 
    public static void xuly(String pat, String txt) 
    { 
        int M = pat.length(); 
        int N = txt.length(); 
  
  
        int lps[] = new int[M]; 
        int j = 0;
  

        computeLPSArray(pat, M, lps); 
  
        int i = 0; 
        int count = 0;
        while (i < N) { 
            if (pat.charAt(j) == txt.charAt(i)) { 
                j++; 
                i++; 
            } 
            if (j == M) { 
                count++;
                j = lps[j - 1]; 
            } 
  
           
            else if (i < N && pat.charAt(j) != txt.charAt(i)) { 

                if (j != 0) 
                    j = lps[j - 1]; 
                else
                    i = i + 1; 
            } 
        } 
        System.out.println("Tim thấy " + count + " lần");
    } 
  
    public static void computeLPSArray(String pat, int M, int lps[]) 
    { 
        
        int len = 0; 
        int i = 1; 
        lps[0] = 0;
  
        
        while (i < M) { 
            if (pat.charAt(i) == pat.charAt(len)) { 
                len++; 
                lps[i] = len; 
                i++; 
            } 
            else 
            { 

                if (len != 0) { 
                    len = lps[len - 1]; 
  
    
                } 
                else 
                { 
                    lps[i] = len; 
                    i++; 
                } 
            } 
        } 
    } 
  
     
    public static void main(String args[]) 
    { 
        String txt = "aaaaaaaaa"; 
        String pat = "aaa"; 
        xuly(pat, txt); 
    } 
} 


Nguyễn Hoàng Anh [C1907L]

Ngày viết: 10:40 28/03/2020



/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package testmarch27;

import java.util.*;

/**
 *
 * @author Redmibook 14
 */
public class NewClass {

    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.println("Input source String : ");
        String srcstr = input.nextLine();
        System.out.println("Input string to find : ");
        String str = input.nextLine();
        int c = srcstr.split(str).length;
        int d = srcstr.indexOf(str);
        System.out.println("String show " + c + " time");
        int index = 0;
        int count = 0;
        if (srcstr.indexOf(str, index) == -1) {
            System.out.println("String  unidentify");
            return;
        }
        System.out.print("String  position in : ");
        for (int i = 0; i < srcstr.length(); i++) {
            if (srcstr.indexOf(str, index) != -1) {
                index = srcstr.indexOf(str, index);
                System.out.print(" " + index + " ");
                index++;
                count++;
            }
        }
        System.out.println("String show " + count + " time");
    }
}


Phân Loại Bài Viết

Tài Liệu Tham Khảo

Đã sao chép!!!