[음악 연주] [MUSIC - ROSSINI, "RANZ DES WILLIAM FROM VACHES는 "TELL] [MUSIC - 영어 BEAT, "월 SWIVEL HEADS "의] [박수 갈채] DAVID 마란 : 그래서이 CS50입니다. 내 이름은 데이비드 마란입니다. 그리고 73 %는 이전에 아무런 경험이없는 컴퓨터 과학과, 당신이 생각하는 것과는 달리. 그래서 오늘 우리는 깎아 줄 알았는데 친숙 부족뿐만 아니라에 당신을 위해, 당신의 감각을 제공합니다 더 편안함을, 어떤 방향으로 당신은이 학기를 갈 수 있습니다. 그래서 함께 시작하자. 난 정말 아무 생각의 안쪽에 무엇이 없습니다 컴퓨터, 비록, 당신처럼, I 매일 사용합니다. 그러나 상자의 어떤 종류의, 그리고 거기에 그것으로 많지 입력. 최소한, 무슨 일이있어? 아마 전원 코드를 연결합니다. 그리고 실제로이 하나의 재료와 함께, 전기, 우리는 할 것 같다 요즘 꽤하고. 하지만 하루의 끝에, 우리는 물건을 나타내는이 우리는 신경합니다. 우리는 정보를 표현해야 어떤 형태합니다. 그리고 당신은 적어도 막연있을 거예요 진에 의해 아이디어에 익숙하거나 비트 든 또는 다른 컴퓨터 0과 1로 감소. 그러나 우리는 그것을 적어도을 수용 할 수 그에게 빛을 조금 넣어? 그래서 나는이 작은이 여기에 책상 램프. 여기 전기 콘센트가 있습니다. 그리고 그 내부를 제시하는거야 내 컴퓨터 중 적어도 하나는 이러한 것들을 할 수있는 무언가 의는 오프 스위치 나되고있다. 이 경우, 그것은 실제로 책상 램프의 그러나 낮은 수준에서, 그것은 뭔가의 트랜지스터했다. 그러나 우리의 세계에서, 그것은 책상 램프, 그래서 내가 가서이 문제를 연결하는거야 여기 내 전기로. 그리고,이 간단한 사용 주장 간단한 장치,이 간단한 스위치, I 정보를 나타낼 수 있습니다. 예를 들어, 지금 나는 아무것도 대표하지, 그렇지? 나는 나 0 전화 할게 무엇을 나타내는 해요 거짓, 무언가의 반대 실제로 존재하는. 하지만 단순히이 스위치를 켜면, 지금은 1 표현했다. 이 매우 간단한 조각을 사용해서 만약에 당신이 기억은, 내가 표현할 수 있습니다 정보를 제공합니다. 지금 불행히도, 내 컴퓨터 모두 많이 할 수 없습니다. 그것은 단지 두 개의 값을 나타낼 수 세상에서 - 0 또는 1. 하지만, 지금은, 명백한 솔루션입니다 우리는 우리의 컴퓨터를 확장하려는 경우 메모리 및 자세한 내용을 나타냅니다 보다 단지 0과 1? 음, 같은 또 다른 비트를 잡아 보자. 서로의 다른 스위치를 잡아 보자 트랜지스터, 그러나 당신은에 싶습니다 그것에 대해 생각합니다. 내가 가서이 연결하자 내 컴퓨터뿐만 아니라.로 그리고 그게 지금 항에 갈거야 좀 더 전기를 사용하여 에서 이러한 스위치를 더 돌고 해제, 좀 더 그런를 나타낼 수 있습니다 정보를 제공합니다. 그래서 지금이 1입니다. 지금은 표시하려는 경우 2, 나는이 작업을 수행 할 수 있습니다. 그러나 일반적 규칙으로 우리가 거 결국 볼 날이 작업을 수행해야합니다. 이 0 그래서,이 1입니다. 이 2가 될 것이다. 되지 놀랍게도,이 3이됩니다. 그래서이 방법으로, 여전히 수 우리는 더욱 카운트? 나는 세 번째 비트, 제 3 스위치를 얻는 경우 내가 지금 할 수있는 가장 높은 번호는 무엇입니까 0에서 카운트 업? 좋아, 0에서 시작하는 거라면 7 그래서? 때문에에이 빛을 켜고 경우 실제로이 세 번째이자 마지막을 연결 여기 내 전기 콘센트에 불 그때 표현하는 능력을 가지고 여기에 두 값의 두 값 여기, 여기 두 개의 값 - 그래서 나는 2 번 2 번을 나타낼 수 2 또는 8 개의 가능한 값. 그리고 0에서 회계를 시작하는 경우, 그래서 즉 0, 1, 2, 3, 4, 5, 6, 7이다. 이 이진 그래서. 정말만큼 간단합니다. 그리고이 사실이라고 주장 것 대부분 매우 친숙한 이 방에있는 모든 사람. 내가 가서 열어 보자 여기에 약간의 텍스트 편집기. 그리고 당신은 초등학교에서 호출 할 수 우리는 수백 같은 것들을 있다고 장소, 10 자리, 그리고 사람은 장소입니다. 그리고 기억하는 당신은 몇몇 소수가 있다면 임의 뭔가 같은 수, 123처럼, 당신은 본질적 것 형태로 그를 쓰기 이 세 열. 그리고 왜 1, 3 어떤 2 우리는 123으로 알고? 음, 왼쪽 열에서, 우리는이 한 100 플러스 두 10S, 120의 있도록 플러스 세 초 123의 있도록. 우리가 조명 이제이 세상 정확히 동일합니다 당신은 몇 년 동안 잘 알고 있었어요 지금 제외한, 우리의 열 10의 거듭 제곱 수 없습니다. 그들은 단지 2의 거듭 제곱입니다. 그 사람의 장소,이 그래서 반면, 조로 장소가 될 것입니다, 이것이다 발로 장소가 될 것. 그리고 가장 단순한를 사용하고 있기 때문에 물건을 설정하는 메커니즘 와 오프 - 전기 흐르는 또는 전기가 흐르지 - 꽤 같은 표현이 없습니다 구를 통해 0으로 다양합니다. 우리는 간단 해 슈퍼 유지하는 것입니다 컴퓨터의 세계합니다. 만 0 또는 1이 - 끄거나, 허위 또는 사실. 그리고 지금은 표현하고있어 1, 1, 1, 때문에 이러한 각 조명이 켜집니다. 음, 그래서 나에게 하나의 4 더하기 하나는 둘을 제공합니다 그 6의, 더하기 하나는 1, 그리고 7입니다. 그리고 ERGO 세의이 시퀀스를 수행 비트 숫자 7을 나타냅니다. 안에서 너무 모든 시간, 컴퓨터의 임의의 숫자했습니다 트랜지스터, 비트의 수. 하지만 하루의 끝에, 우리는 정보를 표시 할 수 단순히 것과. 지금 불행하게도, 우리는 계산 한 최대 지금까지 CS50에 7 만, 희망 우리는 조금 할 수 있습니다 보다 더 나은. 그리고 실제로 우리는 할 수있다. 가정이 우리와 같은 인간 단지 임의로 우리가가는 것을 결정 1, 2, 3과 같이 숫자를 연결할 특정 문자 4, 5, 6, 7, 알파벳. 역사적 이유로, 나는 갈거야 다소 독단적으로 시작하지만, 난 인간을 말하려고, 우리는 가고있다 전 세계적으로, 표준으로 결정하는 65 숫자 문자 A를 나타냅니다 66 B. 점, 점, 점을 나타냅니다. 90 문자 Z.을 나타냅니다 우리가 정말 약간을 넣어 경우에,의를 가정하자 그것으로 생각, 우리가 올 수 느낌표 번호 실제로, 소문자, 그리고 다른 사람들은 우리를 위해 그 짓을했다. 그래서 지금 우리는 비트를 가지고 우리가 할 수있는 대표 번호 번호되는 우리는 문자를 표현하고, 함께 할 수 있습니다 편지는 우리가 지금 구성을 시작할 수 있습니다 이메일 및 인쇄되지 않는 문자 화면에. 그래서, 내가 할 수있는 경우에, 저를 초대하자 팔 용감한 자원 봉사자 - 뿐만 아니라 나타나는 신경 쓰지 않는 사람 카메라하지만 인터넷에서 - 여기 와서 팔 등을 대표하는 오히려 이들 3 개 비트. 이렇게하는 방법에 대한 하나, 둘? 어떻게 약 3? 빛에 얼마나 약 4 블루 끝에 다섯? 여기에 사람에 대한? 앞의 여섯 앞에 일곱, 뿐만 아니라 앞, 8. 그래서 난 그냥 준비 서 일어난 종이 전표의 전체 무리와 함께. 종이의이 조각에 번호는 그 무엇을 나타내는 열 너희들을 표현하는 것입니다. 그래서 당신은 것입니다 - 당신의 이름은 무엇입니까? 학생 : 안나 레아. DAVID 마란 : 애나, 리아 128S 열 수 있습니다. 당신은? 학생 : 크리스. DAVID 마란 : 크리스 것 64S 열합니다. 당신은? 학생 : 댄. DAVID 마란 : 댄 것 32S 열합니다. 학생 : Pramit. DAVID 마란 : Pramit는 것 16S 열합니다. 학생 : 릴리안. DAVID 마란 : 릴리안 8S 될 것입니다. 학생 : 질. DAVID 마란 : 질이됩니다 4s를 열합니다. 학생 : 메리. DAVID 마란 : 마리아는 2S, 그리고 것인가? 학생 : 데이비드. DAVID 마란 : 데이비드 것 초 열합니다. 너희들은 작은 단계를 수 있도록하는 경우 앞으로 그렇게 모든 사람들이 볼 수 있습니다. 너희들이 보이지 않는 것은 그에 뒤 종이의이 전표는 에 관하여 약간의 속임수 시트 하나 이러한 8 비트를 지시 자신의 손이나하지를 제기 손을 올립니다. 자신의 손이 올라가 있다면, 그들은있어 1을 나타내는. 자신의 손을 아래로 유지하면, 그들이있어 0을 나타내는. 한편, 우리는 청중해야 이를 바탕으로 알아낼 수 매핑, 어떤 세 글자 단어를이 사람들은 밖으로 철자하려고합니다. 그래서 그냥 순간에, 당신은에 갈거야 뒷면에서 첫 번째 라인을 읽어 여러분의 컨닝 페이퍼, 당신은 하나입니다 손을 올리거나 올리지 것. 당신이 1 경우에, 당신은, 만약 인상 당신은 0이고, 당신이 거기 서 어색하게 그냥 그런. 이동합니다. 어떤 숫자, 무엇보다도, 이 녀석은 대표 있습니까? 66. 66, 오른쪽? 우리는 64S 열에서 1이 2S 열에서 1. 저에게 66주는, 표시되도록 B. 지금을 대표 할 너희들은 철자했습니다 - OK, 그만이다. B. 그래서 지금의이로 이동할 수 우리의 두 번째 편지입니다. 이동합니다. 누가 여기에 수학에서 가장 빠른입니까? 79 그래서. 다시 말하지만, 우리는 모든 열을 추가하는 경우 하는 1 단지, 현재, 거기에 우리는 간단한에 전에했던 것처럼 7 예, 우리는 지금 숫자 79을 얻는다. 우리의 맵핑에 따라 어느 편지 O. 그래서 우리는 거의 다 왔어. B, O. 그리고 마지막으로는, 이동합니다. 그들은 지금 무엇을 나타내는 있습니까? 적은 합의. 그건 절대 불평이다. 네, 사실은 87 년이다. 좋아요. 우리는 지금 그 백업을 매핑 그렇다면 -하자 우리의 ASCII 차트를 호출 시작 을위한 미국 표준 코드 정보를 교환합니다. 그것은 우리에게 편지를 준다 - "보"하지만 "활입니다."하지 그리고 그 완벽 너희들은 활을 적용하기 위해 큐 다시과 머리. 정말 감사합니다. [박수] DAVID 마란 : 당신이 그들을 유지할 수 있습니다. 실제로 누구 것이지만 책상 램프 등도? [청중 HOOT] DAVID 마란 : 스탠드? [웃음] DAVID 마란 : 정말? 모두를위한 책상 램프? 좋아. 정도의 매우 간단한로 시작 원리, 우리는 지금 계산 한뿐만 아니라, 0 ~ 7까지 모든 방법, 우리는했습니다 더 던지는하여 해당 단지 가정 비트 이상 등 이상 트랜지스터 이 문제에서, 우리는 할 수있다 더 크고 더 큰 숫자를 나타내며, 에고, 더 크고 더 큰 범위의 영어와 같은 알파벳. 오늘은 그냥하자의 믿음에 걸릴 그와 비슷하게 우리는에 시작할 수 그래픽 및 비디오 하나를 나타냅니다 우리가 야되는 다른 매체의 수 오늘 익숙한. 이 CS50 그래서,이 클래스 당신과 함께, 또 매우 많다 적게 가지고 친구들 당신으로 발생합니다. 그리고 때문에 아주이 단지는 물론, 종종 같은 최근의 하나로서 포함 신입생 이벤트를 조언하고시 지난 봄의 2 학년 조언 이벤트, 우리는 종종 학생들이 부인들을 잘, CS 테이블에 때오고 나는 이것을 복용에 대해 생각을 해 봤는데 인트로 클래스,하지만 난 정말 아니에요 컴퓨터 사람. 확실히 나,하지만 모두 나보다 더 알고있다. 그리고 가장 큰 글꼴에 넣고 가능하면이 메시지를 전달하기 위해 해당 그 사실 경우이 아니다. 그리고 만약 당신이 궁금해하는 경우,해야 나는 사실, 여기? 뿐만이 실현이 과정의 컴퓨터에 제목 소개 과학, 그것은 컴퓨터에 소개 과학 I. 그래서 거기에 실제로 두 번째 등 소개. 그래서 당신은, 사실, 아니에요 잘못된 장소합니다. 그리고 오늘은이 목표 중입니다 이러한 문제에게 당신을 완화하는 있을뿐만 아니라, 페인트 를 위해 가게에서 무엇을 그림으로 학생들은 점점 더 편안하게 모두이 과정을합니다. 그러나 유인물 중 하나에 먼저 단어 당신은 오늘날 그중 자주 묻는 질문의 번호입니다. 그것은 약간의 시간에 대한 우리의 비전이었다 이제 새로운 등급을 소개 이 과정에 옵션 - 즉, / UNSAT를 앉았다. 철학적 나를 위해, 그것은 훨씬 더 많이 훨씬 더 중요한 것 이 클래스의 학생들이 함께 참여 소재는,에 의해 도전 소재, 그리고 훨씬 적은 약까지 걱정 실제 점수의 역학 학기에서와 편지 등급 말,하지만 정말 포옹 물론 그 재료. 그리고 정말 더 일반적으로 느낀다 위하여, 그 (것)들에 흥미있는 것은 하지만 도전과 보람 실패의 두려움없이. 그리고 실제로이 너무 반복입니다 이것과 다른 소개의 테마 당신이 다른 분야 과정, 그것은에 관해서이 공포 에 하나의 발가락을 넣어 익숙하지 않은 물. 다시 1995 년 나 자신, 신입생이었다. 나는 매우 많은 것으로 집중되었다 여기에 정부의 집중. 아직 난 항상 비트와 함께 자란 것 컴퓨터 과학에 관심. 난 항상 궁금했다. 그러나 그때에도 나는이 두려움을 가지고 심지어 너무 많은, CS50에 발을 스테핑 난 쇼핑을하지 않도록 그것은 학년. 그리고 난에 발을 넣어 유일한 이유 문 2 학년 년 이었기 때문에 그것은 통과 / 실패 치를 수 있었다. 하지만 그 패스 / I를 얻을 것을 요구 실패 신경까지 약속을 만들려면 시간에 교수 Kernehan와 함께, 종이이 큰 시트를 가져오고, 요청 그 자신의 서명과에 대한 그의 탐구 할 수있는 권한 이러한 익숙하지 않은 물. 그리고 최근 몇 년 동안 도움이되지 않았습니다 그 CS50에서이 작업을 수행 할 때, 때 우리 패스 수 / 실패 비슷하게 것하는 데 사용 수십 또는 급우의 수백 에서 금지 신 등장해야 이 양식 샌더스 앞에 그 어떤 마음에서, 무능력을 나타내는 내가 수행 할 감히 동료 '수준이다. 어떤 말도,하지만 난 생각 해요 그 정신이있다. 이 문화가 결코 없다 SAT / UNSAT, 또는 합격 / 더 많은 실패의 일반적으로,이 과정에서, 나 정말이 캠퍼스에. 그래서 올해 우리는이 변경되었습니다. 나는의 황홀 반 것 이 클래스 이상 종료 CS50를 복용 / UNSAT가 있었다. 올해의 시간에, 그것은 멋진 것 거의 모든 사람들이됩니다. 이후 아마도 우리가 일할 수 하버드 편지 등급에 더 일반적으로 대학. 하지만 지금, 우리는 우리 안에이 작업을 수행 할 수 있습니다 자신의 영역, 그리고 진심 것 당신은 그 제출을 검토하고 격려 당신이 맞는 볼 질문, 그래서 잘하면 나 달리하지 않습니다 매우 같은 공포 요인 경우가 아마 어떤 탐험 낯선 장소입니다. 그래서 CS50은 무엇입니까? 그것은에 소개 컴퓨터의 지적 기업 과학 및 프로그래밍의 예술. 하지만 그건 정말 무엇을 의미합니까? 음, 지금까지, 우리는 매우 간단히 이야기 정보를 나타내는 정보. 그러나 우리가 실제로 원하는 가정 그것으로 뭔가를 할 수 있습니다. 우리의 개념을 도입 할 필요가 우리는 알고리즘을 호출 무엇에. 알고리즘 절차, 과정이며, 에 대한 지침의 집합 뭔가를하고. 그리고 알고리즘이 뭔가 할 수 있습니다 초간단. 예를 들어, 예를 들어 일부와 당신이 알고 있어야이 될수 있습니다 여기 것. 그래서 여기이 책은 점점입니다 날짜하지만, 옛날 옛적에, 그것은 이름의 전체 많이 포함 와 전화 번호. 그리고 실제로, 나는 발견하려는 경우 이 전화 번호부에있는 사람 - 마이크 스미스라는 사람을 말한다 - 어떤 수의 마이크 스미스를 찾을 수 매우 간단한 방법. 나는 처음에 시작하고 있었다 거기 1 페이지로 이동하십시오. 2 페이지, 거기. 3 페이지를 참조하십시오. 즉,이 알고리즘이다 과정, 올바른? 그래서 올바른 맞아? 나는 그것을 수행하는 바보의 일종이야 그 방법으로, 그러나 결국 나는 것 성 S를 찾아 희망 마이크 해당 섹션에, 나는 될 것이다 내 알고리즘을 수행. 하지만 확실히 직관적 아니다. 이 대부분은 모든 합리적인 사람 객실 못했을 것이라고. 당신이 무슨 짓을 한 것인가? 당신은 똑바로 갈 것 중간에, 오른쪽? 대략 중간에. 그리고 당신은 오, 실현, 이들은 양이다 그래서 마이크 스미스, 성 스미스되고, 다음에, 명확하지 않습니다 책의 왼쪽 절반입니다. 그는쪽으로해야합니다 S는 오른쪽에 있습니다. 이 시점에서,하지만 우리의 대부분 현실에서이 작업을 수행하지 않습니다, 우리는 할 수있다 그대로 반이 문제를 찢어. [갈채와 박수] DAVID 마란 : 감사합니다. [갈채와 박수] DAVID 마란 : 당신은 문자 그대로 찢어 수 있습니다 반 문제로 날 떠나, 큰 문자 그대로, 문제 반. 이 전화 번호부이었다 그래서 만약 -와 아마이었다 - 1,000 페이지에 대해 지금 그것은 단지 500이다. 나는 다시 이렇게 내가 알게되면, 오, 젠장, 내가 너무 멀리 갔다, 나는 TS에있어 섹션 I는 유사 할 수 있습니다 - 비유 나 그대로 - 전화 번호부를 찢어 - 실제로 있었다 훨씬 쉽게 시간입니다. 말 그대로 전화 번호부를 추출 할 수 있습니다 반으로 지금 날 떠나 하지 1000, 아니 500 - 250 페이지를 참조하십시오. 그리고 125 가고, 그 절반 수 그 절반, 그 절반, 마지막으로 내가 남아있을 것입니다 때까지 단 하나의 페이지입니다. [웃음] DAVID 마란 :의 I 부에 실패합니다. 하나의 페이지에있는 마이크는 희망입니다. 이제 이러한 서로 다른 알고리즘이 될 수 있습니다 일종의 평가 나에서 평가 다른 방법. 첫 번째는 매우 선형 옳았다? 페이지를 설정, 마이크를 찾습니다. 페이지를 설정, 마이크를 찾습니다. 그것은 매우 직선이다. 전화 한 페이지 이상이있는 경우 책, 아마 저를 걸릴 거예요 더 많은 초, 시간의 1 단위를 더, 그러나 우리는 시간을 계산하고 있습니다. 그래서이 같은이 선을 그릴 수 있습니다 여기 약자의 크기 왼쪽에서 오른쪽으로 문제 증가 - 전화 번호부 더 큰까지 작아 - 와 시간에 증가 할 것입니다 수직 축, 큰 전화 번호부입니다. 따라서 N은 일반적인 변수이다 컴퓨터 과학자 표현하기 위해 사용 일부 값은 몇 가지 수. 그래서 여기서 n은 선형 적으로 증가 할 것입니다. 전화 번호부의 크기를 두 배로, 그것은이다 두 배 정도 나 걸릴 것 시간이 대부분, 마이크를 찾을 수 있습니다. 지금은 스마트 수 있었다 이것에 대해, 오른쪽? 나는 빨리 지루해지고 있었다. 조로하여이 작업을 수행 할 수 있었다. 그 때문에 두 페이지, 넷, 그 다음 여섯, 여덟. 나는 그것을 통해 비행 시작할 수 의 작은 위험이라도, 조금 더 빨리 오버 슈트 마이크,하지만 곡선은 없습니다 모두 다른 것. 그것은 여전히​​ 똑 것 라인,하지만 약간 빠른. 그러나 나는 무엇을 했는가? 나는 실제로 뭔가를했다 근본적으로 더 나은. 나는 우리가 대수 전화 할게 무엇을 달성 N 시간, 로그, 그것에 의하여이 녹색 라인은 훨씬, 훨씬, 훨씬가 그것은 덜 똑 바른 가장자리. 그것의 일종으로 오히려, 그것은 제안 , 아무리 점차 무한대에 접근 실제로 1000 페이지를 취할 수있는 전화 번호부는, 그것의 크기를 두 배로 내년 때문에 - 많은 가정 더 많은 사람들이 도시로 이동합니다. 그래서 지금은 2,000 페이지를 가지고,하지만 어떻게 한 더 많은 단계는 똑똑 알고리즘은 걸릴 것? 하나입니다. 나는 강력한 것, 즉 의미합니다. 우리는 내년에 4,000 페이지에 가면, 저를 걸릴 거예요 그 두 단계가 더. 그래서 당신은 커지고 던질 수 하지 웹과 달리 나 한테 문제가 있습니다 더 크고 더 큰 문제를 발생 구글의와 Facebooks에서 매일 세계, 그것은 아니에요 이러한 큰 문제. 나는에 더 많은 생각과 관심을두고 있기 때문에 내 알고리즘을 해결하는되는 효율적으로 문제. 그리고 실제로, 그 중 하나가 될 것입니다 이 과정의 목표. 당신은 것, 길을 따라, 프로그래밍하는 방법에 대해 설명합니다. 당신은에서 프로그래밍하는 방법을 배울 수 있습니다 언어의 수. 하지만 하루의 끝에, 과정은 문제를 해결하고 얻기에 관하여 문제를 해결하는 더 나은 - 그리고, 같이 이런 경우, 문제 해결을 보다 효율적으로. 이제 지금까지, 우리는이 짓을했는지 상당히 직관적. 의 상당히 뭔가를 소개하자 일반은 의사를 불렀다. 그래서 우리는 결국 얻을 것이다 이 과정에 다양한 프로그래밍 언어. 하지만 오늘 우리는 영어와 같은에서 할 수 있습니다 당신은, 그냥 말을 구문 당신 말은,하지만 당신은 그렇게있어 어떤 간결하고 당신에 대해 걱정하지 마십시오 문법과 완전한 문장. 당신은 당신 자신을 표현 간결하게 가능. 그래서 의사는 영어와 같은 것입니다 나타내는 구문 프로그래밍 언어입니다. 그리고 끝으로, 내가 제안하자 그 우리는 지금 우리가 프로세스를 모델링 작은 선물을 계산의 설명 다르게,이 시간을 가지고 생산이 5 분짜리 비디오를 보면 TED에서 우리의 친구에 의해 해당 , 의사가 무엇인지 정의하는 무엇을 정의 알고리즘 생각도하고, 당신은 볼 것입니다 예를 들어 있지만 , 자체에서 간단한 슈퍼, 그건합니다 우리에게 정신을주고 시작하는 것 모델, 어휘, 어느에로 훨씬 더 복잡하고, 많은 것을 아주 빨리 알고리즘. [비디오 재생을 시작] [음악 연주] 내레이터 : 알고리즘은 무엇입니까? 컴퓨터 과학에서, 알고리즘은 어떤 해결을위한 지침의 집합 단계별로 문제 단계. 일반적으로 알고리즘이 실행됩니다 컴퓨터에서,하지만 우리 인간은이 알고리즘뿐만 아니라. 예를 들어, 당신은 어떻게 갈 것 숫자를 계산에 대한 방에있는 사람들의? 당신이 나 같은 경우 글쎄, 당신은 아마 거라고 각 사람에 점 하나 시간, 0로부터 계산합니다. 1, 2, 3, 4, 등등. 글쎄, 그 알고리즘이다. 사실, 그것을 표현하려고하자 좀 더 공식적으로 의사에 - 유사한 영어의 문법 프로그래밍 언어입니다. 하자 N 같 0. 방에있는 각 사람을위한 설정 N N 1을 더한. 이 의사를 해석하는 방법? 물론, 선 하나의 선언, 그래서 말하자면 변수는 N이라고하고 초기화 0의 값입니다. 이것은 단지 의미의 시작 우리의 알고리즘 것이되는 우리는 믿고있어 0의 값을가집니다. 결국, 전에 우리가 계산 시작 우리는 아직 아무것도 계산하지 않았습니다. 이 변수 N을 호출 다만 규칙입니다. 나는 그것을 가장 뭐니 뭐니 수 있었다. 이제 선 두 demarks의 시작 루프 것이다 일련의 단계 시간의 어떤 숫자를 반복합니다. 따라서 우리의 예에서, 단계는 복용하고 방에있는 사람을 기대하고있다. 라인 아래에 두, 세 번째 줄입니다 이는 정확히 방법에 대해 설명합니다 우리는 계산에 대한 갈 수 있습니다. 들여 쓰기는 걸 의미 반복 할 행 세. 그래서 의사가 말하는 것은 각을 0에서 시작한 후 방에있는 사람, 우리는거야 1에 N을 증가시킨다. 지금이 알고리즘은 맞습니까? 그럼, 그것에 조금 세게 수 있습니다. 이 경우 작동합니까 방에 두 사람? 보자. 줄 하나에, 우리는 0 N을 초기화합니다. 이 두 사람의 각각에 대해, 우리는 1에 N을 증가시킵니다. 그래서 통해 첫 여행에 대한 루프, 우리는 0에서 1로 N을 업데이트합니다. 같은 통해 두 번째 여행 루프, 우리는 1 ~ 2 N을 업데이트합니다. 그리고이 알고리즘의 말 n은 2입니다 이는 참의 번호와 일치 방에있는 사람. 지금까지 너무 좋아. 방법 코너 사건에 대해,하지만? 0명가 가정 방 - 나 말고, 누가 계산을하고있어. 줄 하나에, 우리는 0 N을 초기화합니다. 이번에는하지만, 세 번째 줄은하지 않습니다 가없는 이후에 실행 방에있는 사람. 그리고 N은 일치하는 0 유지 방에있는 사람들의 수. 아주 간단한, 오른쪽? 그러나 카운팅 사람들이 한 번에 하나의 아니, 너무, 매우 비효율적이다? 확실하게 우리는 더 잘 할 수 있습니다. 왜 한 번에 두 사람이 계산하지? 대신 1, 2, 3, 4, 5, 6, 7, 계산의 8, 등, 왜,, 2 계산하지 4, 6, 8, 등등? 심지어, 빠른 소리 그리고 그것은 확실히이다. 자,이 최적화를 표현 의사합니다. 하자 N 같 0. 방에있는 사람들의 각 쌍에 대해, 설정 N N 플러스 2와 동일. 아주 간단한 변경, 맞죠? 보다는 카운트 사람들이 하나 한 번에, 우리는 대신 계산 한 번에 두 가지. 이 알고리즘은 따라서 두 배의 마지막으로 빨리. 그러나 그것은 정확합니까? 보자. 이 경우 작동합니까 방에 두 사람? 줄 하나에, 우리는 0 N을 초기화합니다. 사람의 한 쌍의 경우, 우리는 다음 두 가지로 N을 증가시킵니다. 그리고이 알고리즘의 말, N은 2 이는 참의 번호와 일치 방에있는 사람. 이 있다는 것을 다음 가정 방 0 사람입니다. 줄 하나에, 우리는 0 N을 초기화합니다. 이전과 마찬가지로, 선 세 가지가 실행되지 않습니다 전혀 어떤 쌍은 없습니다 때문에 방에있는 사람들의. 그리고 N은 어떤 실제로, 0 유지 의 번호와 일치 방에있는 사람. 그러나 세 가지 어떤이있는 경우 방에있는 사람? 이 방법은 알고리즘 운임합니까? 보자. 줄 하나에, 우리는 0 N을 초기화합니다. 그 사람의 쌍, 우리는 2로 N을 증가시킵니다. 하지만 무엇? 사람들의 또 다른 완전한 쌍 없습니다 방에 따라서 선없는 두 더 더 이상 적용됩니다. 그리고이 알고리즘의 말, N 여전히 2 이는 올바르지 않습니다. 사실,이 알고리즘은 것으로 알려져있어 버그가 있기 때문에 실수 있습니다. 몇 가지 새로운 의사로 시정 할 수 있습니다. 각 쌍의 n를 동일 0 방에있는 사람. 설정 N N 플러스 2와 동일. 한 사람이 짝이 남아있는 경우, 설정 N N 1을 더한. 이 특정 문제를 해결하기 위해, 우리는했습니다 네 번째 줄에 도입, 그렇지 지점으로 알려진 조건 하나가 있다면 그것은 오직 실행 사람이 우리가 할 수없는 서로 쌍. 그리고 지금, 거기에 있는지 여부를 1 년 또는 3 사람들의 또는 홀수 방,이 알고리즘 지금을 계산합니다. 우리는 더 나은 무엇을 할 수 있는가? 음, 우리는 3S 또는 4S 나에 셀 수 5S와 10S하지만, 그 이상, 그것은이다 조금 얻을 수 포인트 어렵다. 하루의 끝에서, 여부를 실행 컴퓨터 또는 인간이, 알고리즘은 집합입니다 과 지침 문제를 해결 할. 이들은 단지 세이었다. 당신은 어떤 문제를 해결할 것 알고리즘? [END 동영상 재생] DAVID 마란 : 유일한 시간이다 나는 만화 형태로 나타납니다. 하지만 그 이야기가 꺼져 나뭇잎 어디에서, 이제 우리는 어떻게 더 잘할 수있다? 열로과 발로, 우리가 주장하는, 우리는 믿을 수있는 사람들은 훨씬 더 빨리, 그러나 우리는 할 수 보다 근본적으로 더 잘합니까? 그리고 우리가 할 수있는 베팅. 우리는 우리 자신의 비트를 소개하는 경우 여기에 의사, 내가 제안하는거야 우리는이 같은 라인을 얻을 수있다. 우리는 사람들을 계산하지 않을거야 하나, 둘, 셋, 넷. 우리는 두 가지 않을거야 4, 6, 여덟. 우리는 근본적으로 더 잘 할거야 문제를 재검토하여,이에 경우, 그렇지 않으면 활용 자원을 충분히 활용. 다만 순간에, 당신이 용서 보시기 바랍니다 그리고 서서 저희에게 유머 우리가가는거야 시점에서 발생, 귀하의에 걸릴 수를 각각 요청 마음에 숫자 1. 그러면 점점가는거야 시간 경과에 가벼운 부상을 입, 발견 서 다른 사람이 결합, 함께 귀하의 번호 그들을 추가하여. 둘 중 하나는 앉아 경주 할 것입니다 아래 첫 번째, 다른 사람 반복하는 것입니다. 그래서 다른 말로하면, 모든 파종하여 숫자 1로하면, 다음 2S 그 2 초에 그 초를 결합 4S에, 사람들과 점점 더 우리의 끝에서,해야 앉아 이 알고리즘은 하나의 대출이 하지만 충분히 빨리 앉지 않은 영혼 사람은 전체 관객 수를 가지고 자신의 마음에있다. 당신이하게하면 그럼 가서 - 하나의 단계 - 장소에 서있다. 그리고 실행합니다. [CROWD는 불평] DAVID 마란 : 당신은 알고 계십니까 로렌은 어디? 729? [CROWD는 불평] DAVID 마란 : 그래? [CROWD는 불평] DAVID 마란 : 좋아, 우리는해야한다 끝 마치기 직전 수 있습니다. 우리는 여전히 여기에 서 한 동료를 참조하십시오. 누가 다른 한 쌍이 될 필요가 있겠습니까? 너희들은 오프 페어링하려는 경우. 맨 위로 사람. 내가 왜 여기에 손을 빌려하지 않습니다. 여전히 아주 소수의 사람들을위한 당신은 어떤 숫자가 할 서 당신의 마음에 있나요? 학생 : 78. DAVID 마란 : 78 플러스 - 여기에 누가 아래 서있는거야? 학생 : 39. DAVID 마란 : 플러스 39. 게다가 다른 사람은 여전히​​ 서있다? 81? OK, 누가? 또 다른 81? 와우. 그리고 무엇 뒤쪽에있어? 학생 : 49. DAVID 마란 : 49, 플러스? 학생 : 98. DAVID 마란 : 98 플러스? 즉, 다른 사람인가? 12? 좋은 일. [웃음] DAVID 마란 : 아, 112 - 오. 잘 했어요! [웃음] [박수] DAVID 마란 : 다른 사람 아직도 서? 네? 학생 : 99. DAVID 마란 : 99. 다른 사람이 아직도 서? 여기에 학생들의 총 수 에 따르면, 실제로 - 당신은 수 있습니까? 아, 사람들의 실제 수 방, 계정에 따라 그 교육 휄로우하고 있었다 모든 사람의 길, 729이었다. 그래서 하버드 학생들의 방 하나 가득의 중 자신을 계산 한, 답은 637이다. [웃음] DAVID 마란 : 그래서습니다. 하지만 여전히. OK, 그래서는 교육의 순간, 오른쪽? 이 지금 우리가 버그로 설명하는 것입니다. 어딘가에 길을 따라, 우리는 몇 가지 않았다 잘못, 또는 누군가 산술, 앉았을 또는 왼쪽, 또는 뭔가 잘못되었다. 하지만 그건 괜찮아요. 도 여전히 있기 때문에, 아주 가까이있어. 그리고 잘못에 우리가 가지고 있다고 주장 것 빨리 내가​​ 가진 것보다 많이 응답 내 더 선형 방식을 사용. 그렇게하자 우리가 실제로 얻을 않았다 있다고 가정 수정하지만, 지금에 대한 생각 매번 일어나고, 대 나의되었다 자신의 순진 가리키는 알고리즘입니다. 하나, 둘, 셋. 729 또는 6백37명 참가있는 경우 여기, 그 날 찍은 것 말 그대로 637 또는 729 pointings 손가락의 내 총 수를 증가. 그리고에 의해 조금 더 할 수 2, 4, 6, 여덟가는, 그리고 그 속도를 두 배로 어쩌면 배 또는 배, 얼마나 잘 나는 할 수있다 따라 내 머리 세는 그렇게. 그러나이 방법 너희들 걸린 근본적으로 달랐다. 때문에 처음에, 여러분 모두는 일어 섰다. 모든 729 그래서. 그리고 문자 그대로 반 의 당신은 앉았다. 그리고 그 후, 다른 당신의 절반 앉았다. 그리고 그 후, 다른 당신의 절반 앉았다. 및 시간의 총 개수가 당신 사람은 앉아서 수도 약 8-9, 10 총 회 우리의 총 개수가 무엇인지에 따라 달라집니다. 그리고 우리가 할의 정렬 할 수 있습니다 이 다른 방법입니다. 우리가 룸의 1,024 명 있다면, 당신이 수 총 횟수 1천24명를 절반은 10입니다. 지금 그것에 대해 생각 다른 방향. 우리가했던 말, 무지, 가정 억 개의이 방에있는 사람, 또는 약간 큰 방. 우리는 몇 번 갔을 것이다 이 알고리즘을 통해 같은 반이 해당 클래스의 앉아? 만 32 등을 걸릴 거예요 크기조차의 클래스 운영, 억 개의. 왜? 억 개의 두 가지로 이동하기 때문에 억원, 만 간다 간다 5 억 250로 이동 만, 점, 점, 점. 난 단지 그 부서에게 몇 가지 32을 수행 할 수 있습니다 시점, 모두를 제외 회 한 사람은 서 남아있을 것입니다. 그리고 그 역시 강력한 일종이다 점점 우리가하려고합니다 그 생각 이 과정에서,과 활용 프로그래밍과 컴퓨터 과학 더 일반적으로, 아이디어와 이러한 세균 이는 우리가 그 많은 문제를 해결할 수 있습니다 훨씬 더 강력하게. 그래서 우리는 꽤 간단한 시작 의사와 방에있는 사람이 있지만, 지금은 사람들로 가득 찬 방 우리는 근본적으로 더 나은을했다. 그럼, 지금부터 전환하자 일부 실제 코드에 의사. 당신이 어떻게 볼 것입니다이 언어 자바 스크립트라고하며, 수 우리는 방향이로 돌아갑니다 학기의 끝. 이것은 프로그래밍 언어 그건 당신 웹 사이트와 같은 기타를 만들기 위해 사용 소프트웨어 요즘. 그리고 우리는 친구 덕분에 그것을 사용했다 우리의 스탠포드에서 인코딩 여기에 몇 가지 숨겨진 정보를 제공합니다. 이것은 스테가 노 그라피의 예술이다 그래서 당신은 숨길 수있는, 말하자면 그렇지 않으면에 표시되는 내용의 정보 소음 완전히 다를 수 모두 이미지입니다. 하지만이 특정 이미지에 포함 실제로 종류의 비밀 메시지입니다. 그래서 내가 가서 위로 당겨 보자 여기에 같은 이미지를이 웹 브라우저에서 시간. 그리고 일부에서 내 손을 흔드는거야 특히 오늘 사항, 이처럼 보이는 분들을 위해 로, 자바 스크립트,하지만 그리스어뿐만 아니라, 완전히 익숙하지 않은 언어입니다. 그러나 이것은의 예입니다 프로그래밍 언어입니다. 그리고 지금은 믿음에 걸릴 코드의 첫 번째 줄 - 및 코드, 그냥 텍스트를 의미합니다. 말 그대로 입력 한 수있는 텍스트 마이크로 소프트 워드로, 경우 내가했다 다음에 올바른 소프트웨어 그것으로 무언가를한다. 프로그래밍 소스 코드, 프로그래밍 코드는 정말 그냥 텍스트이며, 언어에 따라 다른 모양 당신은 영어가 아닌 달리 사용하고있어 스페인어와 러시아어 모두 다른 모양 당신은 당신의 키보드에서 문자를 입력 할 때. 이 첫 번째 줄에, 그래서 지금에 걸릴 믿음은 단순히에서 그래픽을 엽니 다 인터넷이 시끄러운 그래픽 우리는 단지 보았다. 이 다음 줄은 여기의 예입니다 루프, 우리는 실제로 동일한 보았다 TED 비디오의 용어. 루프는 다시 일어나는 무언가이다 다시, 심지어이 생각 절대적으로, 이상한 보인다 에 대한 키워드, 일​​부 괄호, 그리고 일부 세미콜론. 우리가 오래 전에 다시 올 것이다 하지만 루프 기본적으로이 프로그램을 말하고, 모든 반복 그 시끄러운 도트에서 왼쪽으로 오른쪽, 위에서 아래로. 하루의 끝, 이미지에 때문에, 이 같은 - 그리고 당신은 실제로 수 종류의이 프로젝터에서 볼 - 정말 도트 단지 격자입니다. 그래서 우리는 그 점의 각각을 식별 할 수 있습니다 좌표 X, Y로,이과 이 프로그램은, 지금 우리는 시작할 수 있습니다 그 점에 무언가를한다. 그래서 나는 여기에서 앞서 갈 건데 나는 몇 가지 변화를 만들려고 해요입니다 않습니다. 우선 가서 없애려고 그 녹색과 푸른 빛의 모든 소음, 내가 먼저 갈거야 다음을 입력합니다 틀림없이 이상한 구문. 이미지의 메신저. 위치 x, 쉼표, 푸른 설정 위치 Y, 0. 즉, 난 그냥 원하는 파란색을 모두 해제 이 그림에서 점. 지금 가서 클릭거야 이 런 / 저장 버튼을, 당신은거야 오른쪽에 통지, 결과 이미지가 나타납니다. 지금은 슈퍼 녹색,하지만 그건 아니다 놀라운, 말 그대로 켜져 있기 때문에 오프 1의 0을 제작하여, 모든 이 그림에서 파란색. 자, 이제 좀 더 그것을하자. 이미지, 점 setGreen, X, Y를위​​한 메신저. 그냥 왼쪽에서 반복하는 것을 의미합니다 오른쪽으로 그리고 위에서 아래로. 값이 전원을 끄십시오 0,뿐만 아니라. 저장합니다. 와 프로젝터, 당신은 실제로 수 정말 아무것도 전혀 참조하십시오. 내 노트북​​ 화면에 경우, 나는 그냥 피어 올바른 방법은, 내가 약간의를 볼 수 있습니다 이미지, 그들은 여전히​​이기 때문에 거기에 일부 빨간색. 당신은 약어 RGB를 듣고 한 경우 - 빨강, 녹색, 파랑 - 그것은이 구성을 참조 있어요 사용하여 이미지의 다만 이러한 세 가지 색상. 그리고 지금, 우리는 멀리 던져했다 모든 녹색, 모든 블루 있지만, 많은 빨강이 아니다. 그래서 나는 빨간색을 높여 보자. 어떻게 그렇게 할 수 있습니까? 음, 먼저 부탁거야 이 프로그램 질문입니다. 내가 가서의이 전화 두지 않을거야 다만 대수와 같은 변수. 당신은 X 또는 Y 또는 Z를 가질 수 있습니다. 나는 변수를 선언 할거야 그리고, 말을이 변수에 넣어 일시적으로, 값 이미지는 X, Y에 값을 getRed. 그리고 또, 우리는 다시 올 것이다 앞으로이 세부 사항. 하지만 지금은 단지 믿음에 걸릴 이 라인은 무엇을 프로그램을 요구하고있다 X, Y의 붉은 가치인가? 특정 점에서? 그런 다음 나는 뭔가를 할거야. 그럼 이미지 점 세트 빨강을 할거야 X, Y, Y,하지만이 시간에 나는 갈거야 빨간색 번 수행하여 향상 하자 10 말한다. 그래서 10의 요인에 의해 증가합니다. 지금 날 축소하자 클릭 실행 / 저장할 수 있습니다. 거기에 전체 있었다 짜잔, 시간, 비록 우리 인간의 눈 꽤 볼 수 없습니다. 그래서 다시, 이것은 이제 실제 코드 우리가 올 거라고 언어의 예 다시 오래 전에합니다. 하지만 당신의 그 특히, 실현 없이 같은 경험, 그것은 아주이다 곧 우리 자신이 될 것 거기에 그 같은 코드를 작성합니다. 사실, 당신은 모든 도구입니다되는 다소 익숙한, 아마, CS50의는 했다 자신의 코스 - 쇼핑 도구 실제로 일부가 이번 여름 재부팅 CS50 자신의 전 학생, 지금 TFS를 켭니다. 그래서 내장 웹 일어나는 PHP라는 언어를합니다. 그것은 일, MySQL은라는 데이터베이스를 사용 되는 우리는 우리의 손을 얻을 것이다 나중에 학기 더러운. 하지만 그 뭔가 믿거 나 말거나 이 같은 궁극적으로 감소 루프 및 조건의 간단하고 가지, 그와 같은 우리가 보았다 TED 비디오에서 전 순간. 내가 할 거라고 생각 지금 공유하지 않습니다 우리 직원이 만든 뭔가 캠퍼스 아니라 뭔가 전 학생 - 세 사실 학생 - 시에라, 다니엘, 그리고 지난 해 제 샘, 누구의 마지막은 사전 없었다 프로그래밍 경험 그는 CS50을 잡았을 때. 그리고 최종 프로젝트들은 CS50 박람회, 전시, 응용 프로그램입니다, wrdly라고 그들이 만든 웹 기반 프로그램 나는에 공유하고자하는 동영상 당신은 단지 어떤 감각을 줄 학기 말까지 가능. [음악 연주] DAVID 마란 : 주 제로에서의 12 주이 지난 해에. [박수] DAVID 마란 : 맛보기으로도 정말 당신의 식욕은 무엇하는 것입니다 자극하는 가능하면, 이미 본 적이 있습니다 또는 곧 market.cs50.net,를 볼 수 있습니다 물론 팀이 가지고있는 새로운 도구 이 시간에 작업을하고 하버드 학생 협력 올해부터하도록 기관, 이에 잘하면 계속 올 여름 당신이 기준이됩니다 구입하는 캠퍼스 기회 당신에게 관심사의 물건을 판매하고 있습니다. 그리고 HSA를 통해 파트너와 함께, 당신은거야 또한 아이템을 드롭 할 수 일부에서 HSA의 물리적 저장소 중 하나에 미래의 시점, 그래서에 관해서 특히 당신 같은 프록시 것들 졸업 반드시 싶지 않아 물건을 폐기하지만, 실제로 지불 당신을 따를 수있는 사람에게 전달 여기에 캠퍼스. 그래서 더 그에 와서. 그러나 좀 더 구체적으로, 도구 최근에 CS50에서왔다 그 년, 당신 중 일부는 될 수있는로 당신의 익숙하고 다른 수 있습니다 당신은 CS50.net/2x에서 이제 것 인터넷 검색 크롬 확장에 대한 링크를 찾을 수 어떻게 당신이 할 수있는 실증이다 자바 스크립트 같은 언어를 사용 우리 순간 전 에펠 탑과 함께 사용 배 재생 속도를 구현하는 모든 하버드 iSites의 동영상. 이 내장 뭔가 CS50 자신의 비디오 플레이어로. 하지만이 역시, 당신이 시작하면 발굴 소스 코드로, 어떤 우리가 거 즐겁게 사용할 수 있도록, 당신이 방법을 볼 수 있습니다 당신도 그 같은 문제를 해결할 수 와 함께 웹 사이트에 위젯을 가속 이는 이미 잘 알고있어. 그래서 코스 지금 단어 기대와 무엇을 앞두고있다. 일반적으로, 우리는 참으로 여기에 모여 있습니다 하지만 - 월요일과 수요일 이번 주 금요일, 우리는 수집 것이기 때문에 쇼핑 위크 - 1시에서 오후 2시까지하지만 때로는 2시 반까지. 이 때문에 나 할 수있는 주어진 오후 2시 약간의 수업을해야 이후, 또는 이전을 깨닫는다 코스라는 것을지지하는 것입니다 동시 등록, 그것에 의하여 우리는거야 광고위원회에 청원을 지원하고 사용자를 대신하여 주민 학장 경우 당신은 어딘가에에서 충돌이 1시에서 2시 반 사이 범위. 에 대한 해당 URL을 온라인에 머리 자세한 내용. 그러나 지원 구조의 측면에서 그 학생들을 위해, CS50 특징을 더 적은 편안한 비슷하게, 우리 섹션 별개의 트랙을 제공합니다. 이 떨어져 몇 주이지만, 오래 전에 당신에 관해서 묻는 메시지가 표시됩니다 당신의 안락 수준입니다. 당신은 더 적은 편안한 사람들 중입니다 더 편안하게, 또는 어딘가 사이? 그리고 우리는 세 가지를해야합니다 수용 트랙 정확하게 그 관객. 그래서 기간에 아무 시점에서해야 당신 당신이 경쟁하고 같은 느낌도 더 많은 것을 가진 모든 학생들에 대하여 나보다 배경입니다. 사실,이 과정은 될 운명이다 더 많은 협력 등 보다 더 개방. 문제 세트의 측면에서, 당신은거야 ,도를 찾아 그 외에 각 주 문제의 표준 버전 설정 "해커가 종종있다 타겟이 될 운명의 판 " 의 5 %에​​ 10 % 정도에서 그 사이 참의 인구 통계 학적 더 편안하고 더 좋아 기준보다 도전 그 PSET의 버전은 기대하고있다. 할 사람들에 대한 자세한 정보 교과에서 발견. 뿐만 아니라의 내용이 찾을 수 있습니다 과정에 늦​​게 일. 일반적으로 문제 세트 목요일 때문이다. 그러나 당신은 많은을 확장 할 수 있습니다 로 목요일까지 기한이 가을 단순히 중간에 우리를 충족하여 금요일, 그래서 약간의 워밍업 응답, 이야기하기 주 문제 중 일부 질문 세트 그 자동으로됩니다 그런 다음 당신에게 여분 24 시간 제공합니다. 우리는 또한 당신의 가장 낮은 드롭합니다 으로 교과마다 점수. 당신이 어떤 문제의 감각을주고 세트는 - 그것은 참이기 때문에 과정의 문제 설정하는 궁극적으로 거의 모든 정의 보다는 이렇게 학생의 경험, 더 그렇게 강의, 부분보다 더 대부분의 어떤 다른 사람보다는 이렇게 물론 측면. 작년에, 예를 들어, 우리는 시작되었다 우리는 스크래치와 올해 시작합니다. 특히 이번 금요일에, 우리는을 위해 사용합니다 단 하루의 시간, 그래픽 우리가 거​​되는 프로그래밍 언어, 드래그하여 프로그래밍을 시작하고 그 퍼즐 조각을 떨어 뜨리고 만 그 말이 경우 물리적으로 조립 이렇게 논리적 있어요. 다음 주, 우리는 전환 빠르게거야 C, 꽤 이전하지만, 아주 작은 우리가 할 수 있도록 간단한 언어 정말 과정을 통해 0에서 60로 이동 몇 주 후 운용 그 같은 기술과 지식 기본적인 프로그래밍 구조에 PHP와 같은 높은 수준의 언어, 자바 스크립트, 그리고 아직은 다른 사람. 지난해 과정에서 제 PSET , 암호화이었다 도메인 특정 응용 프로그램 그것에 우리 하나를 구현하는 도전 학생 암호의 수, 프로그램되는 정보를 출격하거나 해독하기 위해, 그것을 암호화한다. 해커 에디션, 대조적으로, 우리는 해커 학생들에게 파일을 준 포함하는 표준 UNIX 컴퓨터에서 사용자 이름 및 암호, 의 후반은, 암호화 된 우리는 그 해커에 도전 암호를 해독 학생들은 최선을 다해 그들은 수 이러한 암호, 여전히에 같은 도메인. 스크램블, 게임하는 몇 가지와 함께 의 당신은 아마도 잘 알고 있습니다. 우리는 학생들에게 법의학 조각, 있었던 데이터를 복구 할 그렇지 않으면 내 자신의 디지털에서 삭제 카메라의 컴팩트 플래시 카드에 의해 실제로 파악하는 소프트웨어를 작성, 에서 0과 어디 하였다 이 디지털 카메라가 이전에 JPEG 그래픽 구성? 종류의 도전 지난해 빠른 작성과 관련된 맞춤법 검사기 가능한 경쟁 친구와 급우 경우에 그들은 싶습니다. 후우 'N 분첩을 구현, 압축 프로그램입니다. 그리고 CS50으로 학기 종료 금융과 웹 기반 응용 프로그램 당신은 eTrade 같은 웹 사이트를 만들 수있는 그래서로 주식을 구입하고 판매하는 실제로 거의 잡아 당겨,​​ 말 실시간 시세 야후! 금융. 우리는 작년에했다하지 않았다 무엇을 남아있는 문제가 하나 세트 그럼에도 불구하고 좋아. 당신은에 간 적이 없다면 shuttle.cs50.net, 당신은 사용자를 볼 수 있습니다 이런 약간의 인터페이스를 제공합니다. 그러나, 클래스 재작년 Google지도와를 사용하여 구현 구글 어스 플러그인과 조금 캠퍼스 운전에 능숙한의, 이 게임의 목적은이었다, 그래서 당신은 얼굴의 일부를 볼 수 캠퍼스 운전을 찾고 있습니다 직원 교육 동료 및 CA를하고, 당신은 그들을 가하고 않는 경우 귀하의 셔틀 버스 위에. 그들 중 누구도 실제로 여기에 보이지 않는다 그래서 우리는 치트 코드를 입력 할거야. [웃음] DAVID 마란 : 거기 우리는 간다. 좋아. 여기에 지금은 직원입니다 캠퍼스 엮여. 그리고 당신은 오른쪽에 볼 수 화면의 측면 셔틀 버스 빈 자리가있다. 그리고 목표를 작성했다 이 시뮬레이션 코드되는 운전 따기 및 삭제 승객의 해제. 한 것으로,도, 언어를 사용하여 자바 스크립트를 불렀다. 그래서 프로그램을 실현 좋아합니다 이것은 우리 같은 궤도에있을 올해뿐만 아니라. 측면에서, 현재, 추가 지원, 우리는 근무 시간이 있습니다. 당신은 당신의 자신의 집에서 볼 수 있듯이 식당 홀이나 애넌 버그에서, 우리 집 식당에있을거야 홀 개의 밤 주 - Leverett, Pfoho, 엘리엇과 애넌 버그 올해는 오후 8 오후 11:00. 그리고 우리는 우리가 올해 뭘 해야할지 생각 조금 다른 무언가이다. 당신은 작년 와글 와글 소리를 들으면 그 이것이, 조금 너무 스트레스했다 우리가 설명 하겠지만 올해의 근무 시간, 다음 주에 더 많은 유기 될 것이다 도착에, 당신은있을 것이다 그것에 의하여 하나의 특정 테이블에 파견 여러 직원이 기다리고 있습니다 어디에 우리는 더 많은 일을 할 것이다 유기적. 더 이상 대기하지, 더 이상 iPad를하지만, 오히려 더 친밀한있다 단지의 테이블 주위 대화 여덟 정도 학생들이 우리 어떤 그렇지 않으면 대략 느낌 훨씬 작은 클래스가 될 것이다. 우리는 이러한 것들을에게뿐만 아니라, 우리가 제공하는 연습이라는 비디오에서 촬영 과정의 가르침 중 하나에 의해 진행 동료, Zamyla,하는 그녀 주의 문제를 통해 당신을 안내합니다 를위한 팁과 트릭을 제공 세트 쓰러 도전. 그리고 반대로, 문제 세트 후입니다 때문에 올해, 우리는 또한 해제합니다 작은 클립 포스트 mortems하는 전화 실제로 거쳐 대표 솔루션, 좋은 두 나쁜 어떤을 통해 어떻게 추론 할 수있다 당신이 가질 수 또는 있어야한다 자신의 솔루션을 구현했습니다. 그리고 우리는 처음으로 무엇을 제안 할 것이다 특히뿐만 아니라 올해, 자신을 도와 학생들을위한 과정의 다른 자원 그럼에도 불구하고 어려움을 겪고있다 모두 너무 많이 과정 그 자체로 학생들을 페어링합니다 자원 교사로, 허용 있도록 당신은 훨씬 더 친밀을 집 식당 홀보다 기회 일대일 지원을 할 수 있습니다. 일부에서 이제 최종 엿볼 시야에 끝 게임. 당신은 잘 알고있을 수 있습니다 CS50 Hackathon. 음, 8:00, 12 월에 오는 7:00 PM의 시작 부분에서, 오전 기간을 읽고, 기회가 될 것입니다 친구들과 함께 모이는 - 이 오후 9:00 주위에있을 것입니다 - 최종에있는 당신이 다이빙하는 동안 프로젝트의 구현과 함께 급우, 친구, 음식. 이 때, 1:00 AM 주위에있을 것입니다 음식의 첫 번째 일괄 처리가 도착했다. 그리고 4:00에 대해 오전입니다 CS50 Hackathon에서 특정 연도. 그러나 코스의 진정한 절정은 CS50 박람회에 의미 캠퍼스 전체 자신의 마지막 프로젝트 전시회 어떤 가족과 친구들은 모두하기 우리의 채용으로 초대 업계에서 우리의 친구. 이것은 예를 들어, 엿볼입니다 참석 한 2,000 플러스 사람 지난 몇 년 동안. 이런 표현은 드문되지 않습니다, 유사하게 수행하여 친구들 일들을 기뻐 당신이 성취 한. 실제로, 그 끝으로, 우리는이 시작의 장기 이벤트뿐만 아니라. 만약 당신이 호소 같은 것들, 또는 당신은 무엇으로 최소한 궁금 이것은 알고의 새로운 전통 코스는 CS50 퍼즐의 날이라고합니다. 그리고 이것은 부부의 제정 년 뒤로 정말 캠퍼스에 신호하기 해당 컴퓨터 과학에 대한되지 않습니다 프로그래밍, 그리고 그것은 확실히이다 수용에 대해서만 학생들 누가 이전의 경험이 있습니다. 그것은 문제 해결에 대해 정말 더 일반적으로. 그리고 지난 몇 동안, 일 퍼즐 년 현재, 좋은로 진화했다 에서 우리의 친구와 제휴 페이스 북, 그것에 엄청난있을거야 상금과 강을 건너 피자에서 나 실험실이 오는 토요일. 두 개 또는 세와 해당 URL에 머리 당신은 참여하고 싶은 친구 경우 이 새로운 전통을합니다. 그래서 난 당신이 하나를 유지하도록 요청하고 싶습니다 마음에있는 것, 그리고 우리가 있어요 이분 클립하는 오늘 닫습니다. 73 %가 기억하는 숫자입니다. 케이크도이 밖에서 기다리고 것이다 우리의 수랑 휴회처럼 순간의 커플, 이는 전통 물론,뿐만 아니라. 그러나 이것은에서 키 인용 한 것입니다 명심해야 할 과정의 강의. 결국이 과정에서 중요한 것은 당신은 그렇게 끝나지 위치 귀하의 급우를 기준으로하지만, 여기서 당신은 12 주에, 상대 끝 주 0에서 편안한 휴식을 즐길 수. 하지만, 우리가 당신을 떠날 것이다 엿볼 여기에 오늘은 여기 마지막입니다 우리 같은 다니엘, 누가했다 잠시 전 wrdly 비디오입니다. 나는이 엿볼 당신을 떠날 앞에 무슨 일이 있을지의. 그리고 우리가 이렇게 할 때, 경우에 우리는 CS50를 가질 수 룸의 전면에서 직원 모든 페인트 무대에 올라 와서 에 관해서는 시각적 인 그림의보다 무엇 올해 당신을 기다립니다 - 어색 받고. 우리는이와 함께 종료됩니다 여기에 화면에. [음악 연주] DAVID 마란 :이 CS50입니다. [MUSIC - 매트 & 킴은 "IT는 괜찮아요"] 스피커 1 : 나는 고양이보다 CS50 더 좋아한다. 스피커 2 Whoaaaa! [웃음] DAVID 마란 :이, 그, CS50입니다. 우리는 금요일에 볼 수 있습니다. [박수 갈채] 내레이터 : 다음 CS50에서, 무대 데모는 계획대로되지 않습니다. DAVID 마란 : 우리는 마이크를 찾으려면 이 전화 번호부에있는 스미스. 음, 본능은 무엇입니까? 나는의 중간 정도 점프 할 수 전화 번호부, 아래로 눈에, 볼 수있는 나는 M에있어, 나는 지금 알고 마이크 스미스는 왼쪽으로하지 않습니다. 그는 오른쪽에 있어야합니다. 그리고이 시점에서, 우리는 그대로 찢을 수 - 이 시점에서, 우리는 말 그대로 찢어 수 있습니다 - 이 시점에서, 우리는 비유 할 수 있습니다 반에있는 전화 번호부를 찢어. [우쿨렐레 스트 럼]