1
00:00:01,100 --> 00:00:06,540
Ve bu video, bu dizi sorununa sıfırdan başlayarak çözümler üretmeye devam edeceğim.

2
00:00:07,290 --> 00:00:10,250
İlk elimizde baskı yönlendirmeleri var.

3
00:00:10,260 --> 00:00:11,100
Bu yüzden başlamadan önce.

4
00:00:11,100 --> 00:00:15,780
Ve dosyalarımı düzgün ayarladığımda zaten yaşlanmış bir dosyam var.

5
00:00:15,780 --> 00:00:18,020
Ben sadece HMO bu çözüm denir.

6
00:00:18,450 --> 00:00:27,840
JS çözümüne eşit bir komut dosyası etiketi ekleyeceğim ve o dosyayı yaratmam gerekiyor.

7
00:00:28,450 --> 00:00:30,620
O halde bu çözümü saklayalım.

8
00:00:30,730 --> 00:00:31,840
Evet.

9
00:00:32,940 --> 00:00:37,860
Ve her zamanki gibi benim konseyle başlamak istiyorum ama bağlantı kurmak istiyorum.

10
00:00:39,090 --> 00:00:39,650
Hadi gidelim.

11
00:00:39,660 --> 00:00:41,490
Bunu tarayıcıda açın.

12
00:00:42,450 --> 00:00:45,830
Konsolu açın ve bağlandığımızı görüyoruz.

13
00:00:46,110 --> 00:00:46,860
Tamam.

14
00:00:46,860 --> 00:00:49,390
Öyleyse baskı tersiyle başlayalım.

15
00:00:49,450 --> 00:00:51,180
Dolayısıyla baskı tersi bir işlevdir.

16
00:00:51,540 --> 00:00:57,640
Bu nedenle, tek bir argüman ve dizi alan print revers işlevi tanımlanarak başlayacağım.

17
00:00:57,690 --> 00:01:03,340
Buna sadece rr diyeyim ve tek yapmamız gereken dizi boyunca dönmek.

18
00:01:03,600 --> 00:01:08,430
Ancak, dizinin sonundan geriye doğru döngüye başlamak istiyoruz ve biz sadece var

19
00:01:08,430 --> 00:01:10,140
logunu her öğeyi çağıracağız.

20
00:01:10,200 --> 00:01:12,510
Dolayısıyla burada bir foreach ideal olmayacak.

21
00:01:12,690 --> 00:01:17,160
Listeyi dolaştıracak sıraya göre biraz daha esnek olan bir for döngüsü kullanacağız.

22
00:01:18,390 --> 00:01:24,570
Yani var için sıfırdan başlamak yerine dizinin sonunda başlayacağız.

23
00:01:24,630 --> 00:01:32,130
Yani var eşittir dizi eksi 1 gibi değil ve eksi 1 eklemek zorunda çünkü uzunluğu her zaman

24
00:01:32,130 --> 00:01:34,550
en büyük dizin bir büyüktür.

25
00:01:34,740 --> 00:01:36,730
Yani biraz aralıklı.

26
00:01:36,750 --> 00:01:38,590
Sonra devam edeceğiz.

27
00:01:38,670 --> 00:01:42,480
Ben sıfıra eşit olmakla birlikte.

28
00:01:42,510 --> 00:01:47,400
Ve son olarak eksi eksi gidiyoruz.

29
00:01:47,640 --> 00:01:49,470
Bu yüzden de başlayacağım.

30
00:01:49,740 --> 00:02:03,050
Bu dizinin 3 6 - 5 baskı tersi durumunda, üç olacak bu dizinde başlayacağım ve 5 çıktısını alırsam log

31
00:02:03,690 --> 00:02:13,470
dizisini yazdıracağım ve sonra 1'den çıkarsam ve çıktısıysam bir dizi bize 2, sonra 6

32
00:02:13,470 --> 00:02:21,160
ve sonra 3 ve en son girilen süre sıfır olur.

33
00:02:21,300 --> 00:02:23,460
Böylece üçünü basarız ve sonra işimiz bitti.

34
00:02:23,700 --> 00:02:25,120
O halde bir göz atalım.

35
00:02:25,170 --> 00:02:28,070
Bu baskıyı, bu diziyle ilişkili olarak adlandıracağım.

36
00:02:28,080 --> 00:02:36,070
Tarayıcıda çalıştırın ve beklediğimiz şey olan 5 ila 6 ve 3'ü elde ettiğimizi görebilirsiniz.

37
00:02:36,150 --> 00:02:38,580
Beş altı ve üç.

38
00:02:38,790 --> 00:02:40,880
Bir sonraki soruna geçelim.

39
00:02:41,460 --> 00:02:47,160
Bir sonraki problem, bir diziyi bir argüman olarak tekrar kabul eden ve doğru döndüren üniformadır.

40
00:02:47,190 --> 00:02:49,890
Ancak tüm unsurlar aynıysa.

41
00:02:50,430 --> 00:02:57,930
Bu yüzden sadece bir üniforma başladığına dair bir not yazarak başlayacağım çünkü bu dosyanın sonu

42
00:02:57,930 --> 00:02:59,930
bu dosyanın dolması demek.

43
00:03:00,150 --> 00:03:01,700
Bu yüzden sadece netleştirmek istiyorum.

44
00:03:02,220 --> 00:03:08,940
Şimdi işlevi tekdüze olarak tanımlayarak başlayalım ve tek bir dizi alacağız.

45
00:03:09,510 --> 00:03:15,120
Bu yüzden çözeceğim şekilde bir değişkeni ilk maddeye eşit hale getireceğim.

46
00:03:15,660 --> 00:03:22,200
Bu durumda 1 ve sonra dizi boyunca döngüye gidip, ilk öğeyi diğer her öğeye

47
00:03:22,200 --> 00:03:27,840
kıyasla ve eğer herhangi bir noktada aynı değillerse, yanlış döndürüp yalnızca tüm

48
00:03:27,840 --> 00:03:28,990
işlevi sonlandıracağım. .

49
00:03:29,280 --> 00:03:33,060
Ama bunu sonuna kadar yapmak, her maddenin aynı olduğu anlamına gelir.

50
00:03:33,060 --> 00:03:34,530
Böylece doğruyu geri verebiliriz.

51
00:03:35,010 --> 00:03:41,890
Bu yüzden, ilk değişkeni var ilk önce eşeye eşit yaparak başlayacağım.

52
00:03:43,080 --> 00:03:45,340
Ardından dizi boyunca döneceğim.

53
00:03:45,660 --> 00:03:50,100
Bu yüzden for döngüsünü burada kullanacağım ve bundan sonra açıklayacağımız bir foreach kullanmadığımın

54
00:03:50,310 --> 00:03:51,390
bir nedeni var.

55
00:03:51,390 --> 00:04:01,260
Dolayısıyla, Array'ın artı artı hoşlanmadığı döngülere başlayacağım ve yalnızca yüksekliğin

56
00:04:01,260 --> 00:04:07,810
ilkle eşit olup olmadığını kontrol edeceğim.

57
00:04:07,890 --> 00:04:10,410
Bu, dizimizin tekdüze olmadığı anlamına geliyor.

58
00:04:10,590 --> 00:04:12,920
Bu yüzden yanlış döndürürüm.

59
00:04:13,860 --> 00:04:19,820
Ardından, dizinin sonuna doğru, tüm döngüye geçersek doğruyu döndürebilirim.

60
00:04:20,790 --> 00:04:28,140
Burada bir küçük optimizasyon var şu anda ilk öğe dizilerini sıfıra ilk

61
00:04:28,140 --> 00:04:29,120
öğeyle karşılaştırıyorum.

62
00:04:29,280 --> 00:04:30,680
Döngü boyunca ilk kez.

63
00:04:30,690 --> 00:04:35,710
Başlarsam 0 yazar ve kontrol edersem, satır ilkle eşit olur.

64
00:04:35,790 --> 00:04:36,900
Bu yüzden bunu yapmak istemiyorum.

65
00:04:36,960 --> 00:04:39,090
Ben sadece indeks 1'de başlayacağım.

66
00:04:39,660 --> 00:04:41,280
Test yapalım.

67
00:04:41,280 --> 00:04:49,310
Sayfamızı yenileyin dizi 1 1 1 'in üniformasıdır.

68
00:04:49,500 --> 00:04:50,600
Bu doğru.

69
00:04:50,790 --> 00:04:52,360
Ama ne dersin 1 1 2.

70
00:04:52,620 --> 00:04:55,540
Bu yanlış ve ikisi gitti.

71
00:04:55,620 --> 00:04:57,250
Bu da yanlış.

72
00:04:57,780 --> 00:04:58,290
TAMAM.

73
00:04:58,290 --> 00:05:01,380
Bu yüzden her biri için bir tane kullanmak istemediğimi belirttim.

74
00:05:01,470 --> 00:05:08,780
Ve bunun arkasındaki nedeni, bir foreach yorumu yazdıysam ve bunun için bir

75
00:05:10,110 --> 00:05:21,690
for döngüsü yerine burada her bir işlev için kırmızı bir nokta yaptım ve öğeyi çağırıyorum ve öğenin İlk'e

76
00:05:21,750 --> 00:05:23,700
eşit olup olmadığını

77
00:05:26,890 --> 00:05:29,350
kontrol edeceğim Sahte döndürürüm.

78
00:05:29,380 --> 00:05:34,840
For döngüsü yerine bir foreach ekledikçe, bu tamamen aynı mantık.

79
00:05:35,120 --> 00:05:41,140
Bir sorunumuz var ve sorun şu ki burada yanlış döndüğümde bu sadece

80
00:05:41,140 --> 00:05:43,860
burada bulunan ilk işleve dönüyor.

81
00:05:44,080 --> 00:05:50,540
Bu nedenle, üniformasının tamamından çıkmıyor ve ilk fonksiyonun dışına çıkarak bizi bu seviyeye getiriyor

82
00:05:50,540 --> 00:05:55,040
ve ardından sadece doğru olan bir sonraki satırı çalıştırıyor.

83
00:05:55,900 --> 00:06:00,500
Dolayısıyla, burada bir işle uğraşmak yerine, yalnızca for döngüsünü kullanacağım çünkü çok

84
00:06:00,500 --> 00:06:03,400
daha basit ama sorunun ne olduğunu anlamanızı istiyorum.

85
00:06:03,440 --> 00:06:06,910
Yani bunu özetlemek için tek bir işlev yerine dönüyorum.

86
00:06:06,940 --> 00:06:12,940
Sadece bir katmanı soyar, böylece yalnızca o tam işleve geri döner ve

87
00:06:12,940 --> 00:06:16,760
içindeki bir sonraki işlevi yine de yürütmeyi tamamlar.

88
00:06:16,750 --> 00:06:22,460
Bu yüzden ben bunlardan biriyle geleceğim ve bunu gerçek çözüm olarak bırakalım.

89
00:06:23,950 --> 00:06:26,220
Sırada sıra var.

90
00:06:26,620 --> 00:06:31,420
Dolayısıyla bazı diziler tek bir diziyi alır ve dizinin içindeki her maddeyi toplar.

91
00:06:31,430 --> 00:06:41,660
Bu yüzden bazı dizilimle başlayacağım ve bazı dizinin tek bir diziyi aldığı işlevi ilan

92
00:06:42,800 --> 00:06:44,280
etmeye çalışacağım.

93
00:06:44,890 --> 00:06:48,710
Ve bu durumda toplamı tutacak bir değişken yapmamız lazım.

94
00:06:48,800 --> 00:06:52,920
Ardından, dizinin tamamında dolaşıp toplamı eklemeliyiz.

95
00:06:52,940 --> 00:06:57,170
Dolayısıyla değişkenim toplamı sıfıra eşit olarak başlayacağım.

96
00:06:57,880 --> 00:06:59,850
Ve sonra her biri için yapacağım.

97
00:07:00,310 --> 00:07:02,480
Her biri için dizi.

98
00:07:02,500 --> 00:07:11,090
Ve sadece normal bir döngü yapabilirim ve bu elemanı arayacağım

99
00:07:11,090 --> 00:07:15,010
ve her seferinde toplamı ekleyeceğim.

100
00:07:15,010 --> 00:07:18,300
Böylece toplam artı öğelere eşittir.

101
00:07:19,340 --> 00:07:23,340
Ve sonra son dönüş toplamı ve yapmam gereken tek şey bu.

102
00:07:23,380 --> 00:07:30,050
Bu nedenle dizi üzerinden toplam sıfır döngüsüne başlayın, her elemanı alın ve toplama ekleyin ve ardından toplamı en

103
00:07:30,050 --> 00:07:30,960
sonunda çıkarın.

104
00:07:31,390 --> 00:07:33,750
Test yapalım.

105
00:07:34,060 --> 00:07:37,640
Dizi üzerinde bir dizi yapmayı deneyelim.

106
00:07:37,630 --> 00:07:41,500
Bir iki üç ve altı alıyorum.

107
00:07:41,530 --> 00:07:45,300
Ve 10 10 10'a ne dersin ve 30 alırsın.

108
00:07:45,680 --> 00:07:47,710
Tamam, o zaman bu bir dizi.

109
00:07:48,250 --> 00:07:53,220
Burada sonuncusu sayı dizisinde max öğesini belirlemektir.

110
00:07:53,530 --> 00:07:57,430
Bu yüzden önce yorumlarımı ekleyeceğim.

111
00:07:58,180 --> 00:08:03,130
Max üzerinde çalışacağız ve önce bu işlevi tanımlayacağım.

112
00:08:03,160 --> 00:08:09,550
olarak ilk öğe olarak başlayacağımız ve sonra her diğer öğe ve mevcut maksimum karşılaştırmak.

113
00:08:09,620 --> 00:08:15,800
Yani Max işlevi tek bir diziyi tekrar alır ve burada mantık maksimumu takip

114
00:08:15,800 --> 00:08:20,270
etmek için bir değişkene sahip olduğumuz ve yalnızca varsayılan

115
00:08:20,840 --> 00:08:25,390
Ve şimdiki maksimum değerden daha büyükse, bu değer yeni maksimum değerimizdir.

116
00:08:25,550 --> 00:08:27,670
Ve sonra onu sonuna kadar geri getireceğiz.

117
00:08:27,880 --> 00:08:38,800
Bu yüzden var Max eşdeğerleri dizisi 0'a başlayacağım ve sonra dizi boyunca döngü gidereceğim ve sadece çeşitli uğruna

118
00:08:38,810 --> 00:08:41,220
bir for döngüsü kullanacağım.

119
00:08:41,270 --> 00:08:43,950
Yani var için sıfıra eşit.

120
00:08:44,140 --> 00:08:46,060
Ve aslında 1'de başlayabilirsiniz.

121
00:08:46,610 --> 00:08:51,660
Aynı nedenden dolayı zaten bir oran kullanıyoruz, bunları 1'de başlatabiliriz.

122
00:08:52,310 --> 00:08:54,940
Böylece 1 4 sıfıra eşit olarak başladım.

123
00:08:55,060 --> 00:08:59,080
Elimde bir radar bağlantısı artı artı var.

124
00:08:59,330 --> 00:09:03,260
Ve tek istediğim, dizinin olup olmadığını kontrol etmek.

125
00:09:03,250 --> 00:09:12,450
Bireysel eleman maksimumtan büyükse, Max şimdi Array'e eşittir.

126
00:09:13,510 --> 00:09:19,210
Dolayısıyla bu, yeni bir maksimumla karşılaşırsa değerini sürekli olarak değiştirir veya potansiyel olarak değerini değiştirecektir.

127
00:09:20,060 --> 00:09:25,110
Dolayısıyla bu alıştırmada başında bir iki üç tane var.

128
00:09:25,220 --> 00:09:26,990
Biri maksimum.

129
00:09:26,990 --> 00:09:29,610
Ve sonra döngüden geçiyoruz ve ikisi ile karşılaştırıyoruz.

130
00:09:29,920 --> 00:09:31,120
İki kişi birden büyüktür.

131
00:09:31,220 --> 00:09:32,760
Yani yeni maksimum iki değerdir.

132
00:09:33,010 --> 00:09:35,830
Ve bu tekrarların üçü ikiden fazladır.

133
00:09:35,840 --> 00:09:41,600
Dolayısıyla üç yeni bir maksimum ve kaybettiğimiz son satır, bir kez döngü

134
00:09:41,920 --> 00:09:43,440
tamamlandığında Max'i döndürüyoruz.

135
00:09:43,750 --> 00:09:45,040
Ve gitmek için ne iyi olmalı.

136
00:09:45,430 --> 00:09:54,550
Bu yüzden yenilemeyi deneyelim ve max'i 1 2 3'te çalıştırmayı deneyelim ve üçümüzü alalım.

137
00:09:54,620 --> 00:09:59,840
Şimdi ortada 20 eklemeyi deneyelim ve 20 olsun.

138
00:10:00,290 --> 00:10:03,790
Ve son olarak, negatif bir sayı ile oynamaya ve işe yarayıp yaramayacağına emin olalım.

139
00:10:03,800 --> 00:10:05,160
Ve hala 20 dolar alacağız.

140
00:10:05,480 --> 00:10:06,010
TAMAM.

141
00:10:06,110 --> 00:10:08,290
Yani burada dört çözümümüz var.

142
00:10:08,380 --> 00:10:11,890
Hepsinin bir kısmı ve bir kısmı için kullandığımız bir halkayı kullanmaları gerekiyordu.

143
00:10:11,890 --> 00:10:14,550
Bir for döngüsü kullandık ve bazıları ve hepsi de.

144
00:10:14,570 --> 00:10:16,410
Bir yarış pratiği yapıyoruz.

145
00:10:16,550 --> 00:10:17,050
Muhteşem.

146
00:10:17,090 --> 00:10:21,430
Bir sonraki veri yapımız ve nesne olan javascript'ler hakkında bilgi edineceğiz.
