1
00:00:01,100 --> 00:00:07,270
그리고이 비디오에서는이 어레이 문제에 대한 솔루션을 처음부터 다시 작성하는 방법을 살펴 보겠습니다.

2
00:00:07,290 --> 00:00:10,250
그래서 우리가 가지고있는 첫 번째 것은 인쇄 참조 자입니다.

3
00:00:10,260 --> 00:00:11,100
그래서 우리가 시작하기 전에.

4
00:00:11,100 --> 00:00:15,780
파일을 올바르게 설정하면 이미 파일이 저장되어 있습니다.

5
00:00:15,780 --> 00:00:18,020
방금 그 해결책을 HMO라고했습니다.

6
00:00:18,450 --> 00:00:28,170
J S와 같은 솔루션 태그와 동일한 스크립트 태그 소스를 포함시키고 그 파일을 만들어야합니다.

7
00:00:28,450 --> 00:00:30,620
그러니 그 해결책을 구하십시오.

8
00:00:30,730 --> 00:00:31,840
예.

9
00:00:32,940 --> 00:00:37,860
그리고 언제나처럼 나는 나의 평의회로 시작하고 싶지만 로그를 연결하고 싶습니다.

10
00:00:39,090 --> 00:00:39,650
가자.

11
00:00:39,660 --> 00:00:41,490
브라우저에서 이것을여십시오.

12
00:00:42,450 --> 00:00:45,830
콘솔을 열면 연결되어 있습니다.

13
00:00:46,110 --> 00:00:46,860
괜찮아.

14
00:00:46,860 --> 00:00:49,390
이제 인쇄 역순으로 시작하겠습니다.

15
00:00:49,450 --> 00:00:51,180
역전 인쇄는 기능입니다.

16
00:00:51,540 --> 00:00:57,640
그래서 인자와 배열을 취하는 print reverse 함수를 정의하는 것으로 시작하겠습니다.

17
00:00:57,690 --> 00:01:03,340
나는 그것을 단지 r r이라고 부를 것이고 우리가해야 할 일은 배열을 반복하는 것이다.

18
00:01:03,600 --> 00:01:10,140
우리는 배열의 끝에서부터 시작 부분까지 거꾸로 되돌리고 싶습니다. 그리고 나서 우리는 var를 각 항목에 기록 할 것입니다.

19
00:01:10,200 --> 00:01:12,510
따라서 foreach는 이상적이지 않습니다.

20
00:01:12,690 --> 00:01:17,780
우리는 목록을 순회하는 순서대로 좀 더 유연한 for 루프를 사용할 것이다.

21
00:01:18,390 --> 00:01:24,570
따라서 var에서 나는 0에서 시작하는 대신 배열의 끝에서 시작합니다.

22
00:01:24,630 --> 00:01:34,550
그래서 var은 array가 -1 인 것을 좋아하지 않으며 길이가 항상 가장 큰 인덱스보다 하나 크기 때문에 -1을 더해야합니다.

23
00:01:34,740 --> 00:01:36,730
그래서 약간의 간격이 있습니다.

24
00:01:36,750 --> 00:01:38,590
다음으로 우리는 계속 갈 것입니다.

25
00:01:38,670 --> 00:01:42,480
I가 0보다 큰 동안.

26
00:01:42,510 --> 00:01:47,400
그리고 마지막으로 우리는 마이너스로 갈 것입니다.

27
00:01:47,640 --> 00:01:49,470
그래서 나는 시작할 것이다.

28
00:01:49,740 --> 00:02:21,160
이 배열 3 6에서 5의 인쇄 역순의 경우에 나는 3이 될이 색인에서 시작할 것이고 나는 5를 출력 할 것이고 나는 1을 빼서 1을 빼면 로그 배열을 출력 할 것이다. I의 배열은 2와 6을주고 3은 마지막 시간을 0으로 만듭니다.

29
00:02:21,300 --> 00:02:23,460
그래서 우리는 세 개를 인쇄하고 다 했어요.

30
00:02:23,700 --> 00:02:25,120
그럼 한번 보죠.

31
00:02:25,170 --> 00:02:28,070
이 인쇄물을이 배열과 관련이 있다고 부를 것입니다.

32
00:02:28,080 --> 00:02:36,070
브라우저에서 실행하면 5에서 6, 3이라는 결과를 얻을 수 있습니다.

33
00:02:36,150 --> 00:02:38,580
5-6 및 3입니다.

34
00:02:38,790 --> 00:02:40,880
다음 문제로 넘어 갑시다.

35
00:02:41,460 --> 00:02:47,160
그래서 다음 문제는 배열을 인수로 취하여 참을 반환하는 균일 한 것입니다.

36
00:02:47,190 --> 00:02:49,890
모든 요소가 정확히 같아야 만.

37
00:02:50,430 --> 00:02:59,930
그래서 저는이 파일이 끝날 때까지 꽤 꽉 차서 유니폼이 시작되는 곳이라는 메모를 작성함으로써 시작하겠습니다.

38
00:03:00,150 --> 00:03:01,700
그래서 나는 그것을 분명하게하고 싶다.

39
00:03:02,220 --> 00:03:08,940
우리 함수를 정의함으로써 시작해 보겠습니다. 그리고 그것은 하나의 배열을 취할 것입니다.

40
00:03:09,510 --> 00:03:15,120
그래서 이것을 해결할 방법은 첫 번째 항목과 동일한 변수를 만들 것입니다.

41
00:03:15,660 --> 00:03:28,990
그래서이 경우 1에서 배열을 반복하고 그 첫 번째 항목을 다른 모든 항목과 비교할 것입니다. 그리고 어느 시점에서든 동일하지 않으면 false를 반환하고 전체 함수를 끝낼 것입니다 .

42
00:03:29,280 --> 00:03:33,060
그러나 우리가 끝까지 그것을 만들면 모든 항목이 동일하다는 것을 의미합니다.

43
00:03:33,060 --> 00:03:34,530
그래서 우리는 사실로 돌아갈 수 있습니다.

44
00:03:35,010 --> 00:03:41,890
그래서 저는 먼저 변수 var를 첫 번째 항목과 동일하게 만드는 것으로 시작하겠습니다.

45
00:03:43,080 --> 00:03:45,340
그런 다음 배열을 반복합니다.

46
00:03:45,660 --> 00:03:51,390
그래서 여기서 for 루프를 사용할 것이고, 이후에 설명 할 foreach를 사용하지 않는 이유가 있습니다.

47
00:03:51,390 --> 00:04:07,810
그래서 나는 루프를 반복 할 것입니다. Array보다 I plus plus가 맘에 들지 않습니다. array high가 첫 번째 것과 같지 않은지 검사 할 것입니다.

48
00:04:07,890 --> 00:04:10,410
그것은 우리 배열이 일정하지 않다는 것을 의미합니다.

49
00:04:10,590 --> 00:04:12,920
그래서 나는 거짓을 돌려 줄 것입니다.

50
00:04:13,860 --> 00:04:19,820
그리고 나서 배열의 마지막 부분에서 전체 루프를 통과하면 사실로 돌아갈 수 있습니다.

51
00:04:20,790 --> 00:04:29,120
여기에 하나의 작은 최적화가 있습니다. 저는 현재 첫 번째 항목을 0과 첫 번째 항목을 비교하고 있습니다.

52
00:04:29,280 --> 00:04:30,680
루프를 처음봤을 때.

53
00:04:30,690 --> 00:04:35,710
만약 내가 0이라고 말하면 체크는 행을 먼저 지우는 것입니다.

54
00:04:35,790 --> 00:04:36,900
그래서 나는 그것을하고 싶지 않습니다.

55
00:04:36,960 --> 00:04:39,090
나는 색인 1에서 시작하려고합니다.

56
00:04:39,660 --> 00:04:41,280
그것을 시험해 봅시다.

57
00:04:41,280 --> 00:04:49,310
페이지를 새로 고침하면 배열 1 1 1이 균일합니다.

58
00:04:49,500 --> 00:04:50,600
그건 사실이야.

59
00:04:50,790 --> 00:04:52,360
그러나 대략 1 1 2.

60
00:04:52,620 --> 00:04:55,540
그건 거짓말이고 두 사람은 갔다.

61
00:04:55,620 --> 00:04:57,250
그것은 또한 거짓입니다.

62
00:04:57,780 --> 00:04:58,290
승인.

63
00:04:58,290 --> 00:05:01,380
그래서 나는 각각에 대해 a를 사용하고 싶지 않다고 언급했다.

64
00:05:01,470 --> 00:05:29,350
그리고 그 뒤에있는 이유는 foreach 주석을 작성하고 for 루프 대신에 각 함수에 빨간색 점을 넣었을 때 요소를 호출하면 요소가 First와 같지 않은지를 점검 할 것입니다 나는 거짓을 돌려 보낼 것이다.

65
00:05:29,380 --> 00:05:34,840
이것은 for 루프 대신에 foreach에 추가 한 것을 제외하고는 정확히 동일한 로직입니다.

66
00:05:35,120 --> 00:05:43,860
우리는 문제가 있습니다. 문제는 내가 여기에 거짓을 반환 할 때, 이것은 바로 여기에있는 첫 번째 함수를 반환한다는 것입니다.

67
00:05:44,080 --> 00:05:55,040
그래서 모든 유니폼을 빠져 나가는 것이 아니라 단지 첫 번째 함수에서 나가서이 레벨로 데려 간다. 그러면 다음 라인이 실제로 리턴된다.

68
00:05:55,900 --> 00:06:03,400
따라서 여기서 다루는 작업을 처리하는 것보다는 for 루프를 사용하는 것이 훨씬 간단하지만 문제가 무엇인지 이해하기를 바랍니다.

69
00:06:03,440 --> 00:06:06,910
그래서 다시 한 번 요약하면 하나의 함수 대신 돌아옵니다.

70
00:06:06,940 --> 00:06:16,760
그것은 하나의 레이어 만 껍질을 벗기므로 정확한 함수를 반환하고 그 안에있는 다음 함수는 여전히 실행을 끝냅니다.

71
00:06:16,750 --> 00:06:22,460
그래서 나는 이것을 가지고 나와서 우리의 진정한 해결책으로 남겨 두자.

72
00:06:23,950 --> 00:06:26,220
다음으로 배열이 있습니다.

73
00:06:26,620 --> 00:06:31,420
따라서 어떤 배열은 하나의 배열을 취하고 그 안에있는 모든 항목을 합산합니다.

74
00:06:31,430 --> 00:06:44,280
그래서 우리는 내 의견을 가지고 배열을 시작하려고합니다. 그리고 어떤 배열은 하나의 배열을 취하는 함수를 선언 할 것입니다.

75
00:06:44,890 --> 00:06:48,710
그리고이 경우 우리는 합계를 유지할 변수를 만들어야합니다.

76
00:06:48,800 --> 00:06:52,920
그런 다음 전체 배열을 반복하고 그 합계에 추가해야합니다.

77
00:06:52,940 --> 00:06:57,170
그래서 변수 total이 0이 될 것입니다.

78
00:06:57,880 --> 00:06:59,850
그리고 나서 각각을 위해 할 것입니다.

79
00:07:00,310 --> 00:07:02,480
그래서 각 배열.

80
00:07:02,500 --> 00:07:15,010
그리고 나는 단지 for 반복문을 할 수 있었고 나는이 요소를 호출 할 것이고 나는 매번 합계를 추가 할 것입니다.

81
00:07:15,010 --> 00:07:18,300
그래서 total plus는 요소와 같습니다.

82
00:07:19,340 --> 00:07:23,340
그리고 나서 최종 반환 총액과 그게 전부입니다.

83
00:07:23,380 --> 00:07:30,960
따라서 배열을 통해 전체 제로 루프를 시작하고 모든 요소를 ​​가져 와서 합계에 추가 한 다음 끝에 합계를 반환합니다.

84
00:07:31,390 --> 00:07:33,750
그것을 시험해 봅시다.

85
00:07:34,060 --> 00:07:37,640
배열에서 일부 배열을 수행해 봅시다.

86
00:07:37,630 --> 00:07:41,500
1 2 3 그리고 나는 6을 얻는다.

87
00:07:41,530 --> 00:07:45,300
10 10 10 정도면 30을 얻습니다.

88
00:07:45,680 --> 00:07:47,710
좋아요, 그게 배열이에요.

89
00:07:48,250 --> 00:07:53,220
마지막으로 숫자 배열에서 max 요소를 결정합니다.

90
00:07:53,530 --> 00:07:57,430
그래서 나는 먼저 내 의견을 추가 할 것입니다.

91
00:07:58,180 --> 00:08:03,130
우리는 여기서 Max에 대해 연구 할 것이고, 먼저 그 함수를 정의 할 것입니다.

92
00:08:03,160 --> 00:08:20,270
그래서 함수 Max는 하나의 배열을 다시 취하고 여기서 논리는 최대 값을 추적 할 수있는 변수를 가지므로 기본적으로 첫 번째 요소로 시작한 다음 모든 루프를 반복 할 것입니다. 다른 항목을 선택하고 현재 최대 값과 비교하십시오.

93
00:08:20,840 --> 00:08:25,390
그리고 그것이 현재의 최대 값보다 큰 경우 그 요소는 새로운 최대 값입니다.

94
00:08:25,550 --> 00:08:27,670
그리고 나서 우리는 그것을 끝으로 되돌립니다.

95
00:08:27,880 --> 00:08:41,220
그래서 저는 var Max를 배열 0과 같게하려고합니다. 그런 다음 배열을 반복하면서 다양한 루프를 사용하기 위해 for 루프를 사용할 것입니다.

96
00:08:41,270 --> 00:08:43,950
그래서 var I는 0입니다.

97
00:08:44,140 --> 00:08:46,060
그리고 실제로 1에서 시작할 수 있습니다.

98
00:08:46,610 --> 00:08:51,660
우리는 같은 이유로 이미 비율을 사용하고 있기 때문에 1에서 이것을 시작할 수 있습니다.

99
00:08:52,310 --> 00:08:54,940
그래서 나는 1 4가 0과 같았습니다.

100
00:08:55,060 --> 00:08:59,080
나는 플러스 레이더 링크보다 적다.

101
00:08:59,330 --> 00:09:03,260
그리고 제가하고 싶은 것은 제가 배열되어 있는지 확인하는 것입니다.

102
00:09:03,250 --> 00:09:12,450
따라서 개별 요소가 최대 값보다 큰 경우 Max는 이제 Array와 같습니다.

103
00:09:13,510 --> 00:09:20,030
따라서 새로운 값을 만나면 값이 계속 변경되거나 잠재적으로 값이 변경됩니다.

104
00:09:20,060 --> 00:09:25,110
그래서이 운동에서 처음에는 1 2 3 명입니다.

105
00:09:25,220 --> 00:09:26,990
하나는 최대 값입니다.

106
00:09:26,990 --> 00:09:29,610
그런 다음 우리는 루프를 거쳐 2와 비교합니다.

107
00:09:29,920 --> 00:09:31,120
2는 1보다 큽니다.

108
00:09:31,220 --> 00:09:32,760
그래서 두 가지는 새로운 최대 값입니다.

109
00:09:33,010 --> 00:09:35,830
그리고 그 반복은 세보다 큽니다.

110
00:09:35,840 --> 00:09:43,440
그래서 3은 새로운 최대 값이고 우리가 놓친 마지막 라인은 일단 루프가 완료되면 Max를 반환합니다.

111
00:09:43,750 --> 00:09:45,040
그리고 무엇이 좋은가.

112
00:09:45,430 --> 00:09:54,550
자 이제 이것을 새로 고치고 1 2 3에서 max를 실행 해 봅시다. 우리는 3을 얻습니다.

113
00:09:54,620 --> 00:09:59,840
이제 중간에 20을 더하고 20을 얻자.

114
00:10:00,290 --> 00:10:03,790
그리고 마지막으로 음수로 재생 해보고 작동하는지 확인하십시오.

115
00:10:03,800 --> 00:10:05,160
그리고 우리는 여전히 20 점을 얻습니다.

116
00:10:05,480 --> 00:10:06,010
승인.

117
00:10:06,110 --> 00:10:08,290
그래서 여기에 네 가지 해결책이 있습니다.

118
00:10:08,380 --> 00:10:11,890
그들 모두는 우리가 각각 사용했던 루프와 일부 루프를 사용해야했습니다.

119
00:10:11,890 --> 00:10:14,550
우리는 for 루프와 그 중 일부와 모든 것을 사용했습니다.

120
00:10:14,570 --> 00:10:16,410
우리는 경주를 연습합니다.

121
00:10:16,550 --> 00:10:17,050
굉장해.
