Đếm số lần xuất hiện của mỗi ký tự trong chuỗi C++

Viết chương trình C để đếm tần số của từng ký tự trong một chuỗi bằng cách sử dụng vòng lặp. Cách tìm tần suất xuất hiện của từng ký tự trong chuỗi trong lập trình C. Logic đếm tần suất xuất hiện của từng ký tự trong chuỗi cho trước trong chương trình C

Ví dụ

Đầu vào

Input string: Codeforwin

đầu ra

Frequency of all characters in the given string:
'c' = 1
'd' = 1
'e' = 1
'f' = 1
'i' = 1
'n' = 1
'o' = 2
'r' = 1
'w' = 1

Kiến thức cần thiết

Lập trình C căn bản, If other, For loop, Array, String

Đọc thêm - Chương trình đếm tần suất xuất hiện của từng phần tử trong mảng cho trước

Logic đếm tần số xuất hiện của từng ký tự

Có nhiều thuật toán đếm tần suất xuất hiện của từng ký tự. Ở đây tôi đang giải thích một trong những dễ nhất

Cho trước một chuỗi và một ký tự, nhiệm vụ là tạo một hàm đếm số lần xuất hiện của ký tự đã cho trong chuỗi

ví dụ.   

Input : str = "geeksforgeeks"
         c = 'e'
Output : 4
'e' appears four times in str.

Input : str = "abccdefgaa"
          c = 'a' 
Output : 3
'a' appears three times in str.

Khuyến khích. Vui lòng thử cách tiếp cận của bạn trên {IDE} trước, trước khi chuyển sang giải pháp

Thực hiện

C++




4
03

4
04

4
05

4
06

4
07
4
08
4
0

 

4
1

4
2

4
3
4
4______35
4
6

4
7

4
8
4
9

4
8
4
3
4
2

 

4
8
4
4
4
5
4
3
4
7

 

4
8
4
9

4
8
4
1
4
2

4
3____34

 

4
8
4
6
4
7

4
8

 

4
9

4
3
4
031

4
7

4
8____5034____5035
4
036

4
8
4
5
4
039
4
040
4
036

4
8____5043

4
8
4
6
4
046

4
8

Java




4
048

4
049

 

4
050
4
051

4
7

4
8____5054

4
8
4
2

4
8
4
058
4
059
4
3
4
061
4
5
4
6

4
8
4
7

4
8
4
3
4
068
4
069
4
036

 

4
8
4
4
4
5
4
3
4
075
4
069
4
077

4
8
4
7

4
3
4
9

4
3
4
1
4
084

4
3____34

4
8
4
8

4
8
4
6
4
7

4
8
4
8

4
8

4
8
4
06

4
8
4
058
4
059
4
10
4
11

4
8
4
7

4
8
4
15
4
035
4
036

4
8
4
5
4
039
4
040
4
036

4
8
4
24

4
8
4
8

4
8

Python3




4
28

4
29

 

4
30

4
31

4
32
4
33

4
8

4
8
4
36

4
8
4
38
4
39
4
069

4
8

4
8
4
4
4
44
4
45
4
46
4
5
4
48
4
49

4
8

4
8
4
52

4
8
4
1
4
55
4
39
4
39
4
58

4
3______338
4
39
4
38
4
63
4
64

4
8
4
6
4
38

4
8

4
8

4
70

4
71______339
4
035

4
74
4
39
4
040

4
77
4
78
4
71
4
80

4
8

4
82

C#




4
83

4
049

4
07
4
86

4
8

4
058
4
050
4
90

4
8

4
8____5054

4
8
4
2

4
8
4
058
4
059
4
3
4
00
4
01
4
02
4
5
4
6

4
8
4
7

4
8
4
3
4
2

 

4
8
4
4
4
5
4
3
4
14

4
8
4
7

4
3

4
3
4
9

4
3____31
4
2

4
3____34

4
8
4
8

4
8

4
8
4
6
4
7

4
8
4
8

4
8

4
8
4
06

4
8
4
058
4
059
4
10
4
40

4
8
4
7

4
8
4
01
4
45____5035
4
036

4
8
4
5
4
039
4
040
4
036

4
8

4
8
4
55

4
8
4
8

4
8

 

4
59

PHP




4
60

4
61

4
62

4
04

 

4
64

4
65

4
66
4
67
4
5____369
4
70
4
71
4
72

4
7

4
8

4
8
4
9

4
8
4
78
4
79

 

4
8
4
4
4
5
4
83
4
79
4
83
4
86
4
87
4
5
4
69
4
90
4
83
4
92

 

4
8
4
9

4
8
4
1
4
5_______369
4
99
4
83
4
01
4
71
4
72

4
3______378
4
06

 

4
8
4
6
4
78
4
036

4
8

 

4
8
4
13

4
8
4
15
4
39
4
035
4
036

4
8
4
71
4
39____5040
4
036

4
8
4
25
4
67
4
5
4
15
4
70
4
71
4
31

4
8
4
6
4
046

4
8

4
36

4
37

Javascript




4
38

4
39

4
049

4
8____5054

4
8
4
2

4
8
4
66
4
47

4
8
4
7

4
8
4
51

 

4
8
4
4
4
54

4
8
4
7

4
3
4
9

4
3
4
1
4
084

4
3____34

4
8
4
8

4
8
4
6
4
7

4
8
4
8

4
8

4
8
4
73

4
8
4
75____5035
4
036

4
8
4
79____5040
4
036

4
8
4
83

4
8

4
85
4
86

4
85
4
88

Đầu ra

4

Độ phức tạp về thời gian. O[len], trong đó len là kích thước của chuỗi đã cho.
Không gian phụ. Ô[1]

Triển khai bằng Hàm trực tiếp trong C ++

C++




4
89

4
90

4
91

4
07
4
08
4
0

 

4
9

4
3
4
031

4
7

4
8
4
0300
4
035
4
036

4
8
4
5
4
039
4
040
4
036

4
0308

4
8____50310

4
8____50312

4
8____50314

4
8____50316

4
8
4
6
4
046

4
8

Đầu ra

4

Độ phức tạp về thời gian. O[len], trong đó len là kích thước của chuỗi đã cho.
Không gian phụ. O[1] 

Thực hiện sử dụng đệ quy

C++




4
91

4
07
4
08
4
0

 

4
3
4
0326______35
4
0328

4
7

4
8____50331

4
8
4
1
4
0334

4
8
4
6
4
046

4
8
4
3
4
0340

 

4
8____50342

4
8____50344

4
8____50346

4
8
4
1
4
0349

4
8____50351

 

4
8____50353

4
8____50355

4
8____50357

4
8____50359

4
8____50361

 

4
8
4
6
4
0364

4
8

 

4
3
4
0367

4
8
4
0300
4
035
4
036

4
8
4
5
4
039
4
040
4
036

4
8____50378

4
8

 

4
0380

Java




4
0381

 

4
0382
4
0383

 

4
050
4
90

4
0386
4
059
4
3
4
0326
4
5
4
0391

4
8
4
7

4
0394____50395

4
8
4
1____50398
4
069
4
72

4
3____36
4
069____5036

4
0394
4
3
4
0407
4
069
4
036

4
0386

4
0394____50412

4
0394____50414

4
0394____50416

4
0394
4
1____50419
4
069
4
0421

4
0394____50351

4
0386

4
0394____50426

4
0394____50428

4
0394____50430

4
0394____50432

_______50394____50434____364

4
0436

4
0386

4
0394

4
8
4
6
4
0364

4
8
4
8

4
8
4
058
4
059
4
10
4
0448

4
8
4
15
4
035
4
036

4
8
4
5
4
039
4
040
4
036

4
8____50459

4
8
4
8

4
8

Python3




4
32
4
0464

 

4
8____50466

4
8
4
1
4
5
4
48
4
0471
4
39
4
39
4
069
4
0475

4
8
4
6
4
069

4
8
4
67
4
39
4
069

 

4
8____50484

4
8____50486

4
8____50488

4
8
4
1
4
0491
4
069
4
0493
4
39
4
39
4
0496

4
8
4
67
4
63
4
39
4
64

 

4
8____50503

4
8
4
31

4
8____50507

4
8____50509

4
8
4
67
4
63
4
39
4
0514
4
64____50516

 

4
8
4
6
4
67

4
8

4
71
4
39
4
035

4
74
4
39
4
040

_______377____50528____371

4
0530

 

4
0531

C#




4
0381

4
07
4
86

4
058
4
050
4
90

4
0386
4
059
4
3
4
0326
4
5
4
0391

4
8
4
7

4
0394____50331

4
8
4
1____50550

4
3______36
4
046

4
0394
4
3
4
0340

4
0386

4
0394____50342

4
0394____50344

4
0394____50346

_______50394____31____50349

4
0394____50351

4
0386

4
0394____50353

4
0394____50355

4
0394____50357

4
0394____50359

4
0394____50579

4
0386

4
0394

4
8
4
6
4
0364

4
8
4
8

4
0308

4
0308
4
9

4
8
4
058
4
059
4
10
4
0594

4
8
4
15
4
035
4
036

4
8
4
5
4
039
4
040
4
036

4
8____50605

4
8
4
8

4
8

 

4
0609

Javascript




4
38

4
0381

 

4
8
4
66
4
0614

4
8
4
7

4
8____50331

4
8
4
1
4
0621

4
3______36
4
046

4
8____50626
4
0340

 

4
8____50342

4
8____50344

4
8____50346

4
8
4
1
4
0349

4
3____50351

 

4
8____50353

4
8____50355

4
8____50357

4
8____50359

4
8____50648

 

4
8
4
6
4
0364

4
8
4
8

4
8

4
8
4
0626
4
45____5035
4
036

4
8
4
0626
4
039
4
040
4
036

4
8____50666

 

4
0667

4
88

Đầu ra

4

Thời gian phức tạp. O[len], trong đó len là kích thước của chuỗi đã cho

Không gian phụ trợ. O[len], trong đó len là kích thước của chuỗi đã cho

Bài viết này được đóng góp bởi Sahil Rajput. Nếu bạn thích GeeksforGeeks và muốn đóng góp, bạn cũng có thể viết một bài báo bằng cách sử dụng đóng góp. chuyên viên máy tính. org hoặc gửi bài viết của bạn tới review-team@geeksforgeeks. tổ chức. Xem bài viết của bạn xuất hiện trên trang chính của GeeksforGeeks và trợ giúp các Geeks khác

Làm cách nào để đếm số lần xuất hiện của từng ký tự trong một chuỗi trong c?

Logic đếm số lần xuất hiện của một ký tự trong chuỗi đã cho .
Nhập một chuỗi từ người dùng, lưu trữ nó trong một số biến nói str
Nhập ký tự để tìm kiếm lần xuất hiện, lưu trữ nó trong một số biến nói toSearch
Khởi tạo biến đếm bằng 0 để lưu tổng số lần xuất hiện của một ký tự
Chạy một vòng lặp từ đầu đến cuối chuỗi str

Làm cách nào để đếm số lần xuất hiện của từng ký tự trong một mảng trong c?

Chạy một vòng lặp bên trong để đếm tổng số bản sao của phần tử mảng hiện được chọn . Chạy một vòng lặp bên trong từ i + 1 đến kích thước. Cấu trúc vòng lặp sẽ giống như for[j = i + 1; j < N; j++]. Bên trong vòng lặp bên trong, nếu tìm thấy phần tử trùng lặp, hãy tăng tần số của phần tử mảng hiện tại.

Làm cách nào để đếm tần suất của các ký tự trong c?

Để tìm tần suất của các ký tự trong một chuỗi trong C, chúng ta tạo một mảng phụ lưu trữ tần suất của mỗi ký tự . Mảng được khởi tạo bằng 0 và chuỗi được duyệt qua một lần để cập nhật mảng. Độ phức tạp thời gian của phương pháp là O [ N ] O[N] O[N].

Làm cách nào để kiểm tra số lần xuất hiện trong c?

Thuật toán .
Khai báo biến đếm sẽ đếm số lần xuất hiện cần thiết
Mất một lúc vòng lặp
Khai báo biến rem để lưu các chữ số của số cần so sánh
So sánh rem với chữ số. nếu rem bằng số gia tăng chữ số
n=n/10
In giá trị đếm

Chủ Đề