«didactics» 태그된 질문

컴퓨터 과학 교육에 특히 적합한 교훈적인 도구 및 방법

13
“일부 테스트 사례 시도”휴리스틱을 속이는 방법 : 올바르게 보이지만 실제로는 잘못된 알고리즘
어떤 문제에 대한 알고리즘이 올바른지 테스트하기 위해 일반적인 출발점은 여러 간단한 테스트 사례에서 직접 알고리즘을 실행하는 것입니다. 몇 가지 간단한 "코너 사례를 포함하여 몇 가지 예제 인스턴스에서 시도해보십시오. ". 이것은 휴리스틱입니다. 알고리즘에 대한 많은 잘못된 시도를 신속하게 제거하고 알고리즘이 작동하지 않는 이유를 이해하는 데 좋은 방법입니다. 그러나 알고리즘을 학습 할 …

5
같은 목적에 맞는 다른 알고리즘 / 데이터 구조를 배우는 이유는 무엇입니까?
학부생이었던 이래로이 질문이 궁금합니다. 일반적인 질문이지만 아래 예를 자세히 설명하겠습니다. 최대 흐름 문제와 같은 많은 알고리즘을 보았습니다 .Ford-Fulkerson, Edmonds-Karp & Dinic과 같은 3 가지 알고리즘을 알고 있습니다. 데이터 구조 (예 : 힙)에는 이진 힙, 이항 힙 및 피보나치 힙이 있으며 피보나치 힙은 전체적으로 가장 복잡합니다. 나를 혼란스럽게하는 것은 : 우리가 …

2
"정말로 컴퓨팅 과학을 가르치는 잔인함에 대해"
Dijkstra는 그의 논문 에서 실제로 컴퓨팅 과학을 가르치는 잔인함에 대해 다음과 같은 입문 프로그래밍 과정을 제안합니다. 한편으로, 우리는 술어 미적분학처럼 보이는 것을 가르치지 만 철학자와는 매우 다르게 행동합니다. 해석되지 않은 공식의 조작에서 초보자 프로그래머를 훈련시키기 위해 논리 대수의 모든 대수적 특성에 대해 학생들에게 친숙하게 부울 대수로 가르칩니다. 직감에 대한 링크를 …

3
NP- 완전성 교육-Turing 감소와 Karp 감소
컴퓨터 과학 전공에게 NP- 완전성을 가르치는 가장 좋은 방법에 대한 질문에 관심이 있습니다. 특히 Karp 축소를 사용하거나 Turing 축소를 사용하여 가르쳐야합니까? NP- 완전성 및 축소 개념은 모든 컴퓨터 과학 전공이 배워야 할 개념이라고 생각합니다. 그러나 NP- 완전성을 가르 칠 때 Karp 감소의 사용에는 몇 가지 단점이 있음을 알았습니다. 우선, 일부 …

4
플롯 검사 휴리스틱을 속이는 방법?
동안 여기에 , 데이브 클라크는 점근 적 성장을 비교하기 위해 당신이 손에 기능을 플롯해야한다고 제안했다. 이론적으로 경 사진 컴퓨터 과학자로서 나는이 부두를 음모라고 부르지 않았다. 두 번째 생각으로, 나는 이것이 때때로 사용되지 않는 매우 유용한 접근법이라는 것에 동의해야한다. 줄거리는 첫 번째 아이디어를 얻는 효율적인 방법이며 때로는 그게 전부입니다. TCS를 가르 …

3
De Morgan의 법칙을 설명하고 이해하는 직관적 인 방법은 무엇입니까?
드 모건의 법칙은 종종 컴퓨터 과학 과정을위한 입문 수학에서 소개되며, 종종 용어를 부정함으로써 진술을 AND에서 OR로 바꾸는 방법으로 간주합니다. 진리표를 기억하는 것보다는 왜 이것이 작동하는지에 대한 더 직관적 인 설명이 있습니까? 저에게 이것은 흑 마법을 사용하는 것과 같습니다. 수학적으로 덜 기울어 진 개인에게 이해가되도록 이것을 설명하는 더 좋은 방법은 무엇입니까?

4
퀵 정렬은 아이들에게 설명
작년에 나는 “유치원을위한 양자 역학”에 관한 환상적인 논문을 읽고있었습니다 . 쉬운 종이 아니었다. 이제 가장 간단한 단어로 퀵 정렬을 설명하는 방법이 궁금합니다. 평균 복잡도가 이고 유치원 클래스에 가장 좋은 경우와 최악의 경우가 무엇인지 어떻게 증명할 수 있습니까? 아니면 적어도 초등학교에서?O ( n 로그n )영형(엔로그⁡엔)O(n \log n)

3
일상적인 재료의 논리 게이트
논리 게이트는 전자기 릴레이, 진공관 또는 트랜지스터로 구현할 수있는 추상 장치입니다. 이러한 구현은 기본 이진 안정성 이상의 연쇄 성, 내구성 및 크기의 다양한 속성으로 인해 컴퓨팅에서 부분적으로 성공했습니다. 또한 전기는 쉽게 운반 할 수있는 에너지 원이기 때문에 잘 작동합니다. 나는 나무, 대리석, 중력으로 만들어진 가산기를 보았습니다 . 내가 본 것 …

6
컴퓨터 과학에서 선형 대수학의 어떤 부분이 사용됩니까?
컴퓨터 공학 자료 (주로 기계 학습)를 이해하는 데 도움을주기 위해 Linear Algebra와 해당 응용 프로그램 을 읽었 지만 CS에 유용한 정보가 많지 않을까 걱정하고 있습니다. 예를 들어, 선형 방정식 시스템을 효율적으로 해결하는 방법을 아는 것은 새로운 방정식 솔버를 프로그래밍하지 않는 한 크게 유용하지 않습니다. 또한이 책은 범위, 선형 의존성 및 …

6
구간에서 두 숫자의 최대 XOR 찾기 : 이차보다 더 잘 할 수 있습니까?
두 개의 숫자 과 r 이 주어지고 l ≤ i에 대해 max ( i ⊕ j ) 를 찾고 싶다고 가정 해 봅시다 .lllrrrmax(i⊕j)max(i⊕j)\max{(i\oplus j)} .l≤i,j≤rl≤i,j≤rl\le i,\,j\le r 순진한 알고리즘은 단순히 모든 가능한 쌍을 확인합니다. 예를 들어 루비에는 다음이 있습니다. def max_xor(l, r) max = 0 (l..r).each do |i| (i..r).each …

1
라이브 코딩을 사용한 교육을위한 팁
나는 첫해 프로그래밍 및 알고리즘 과정에 참여하고 있습니다. 최근 강의에서 라이브 코딩을 사용하여 자료를 발표하기로 결정했습니다 . 이는 본질적으로 키보드 뒤에 앉아서 코드를 작성하고 평가하는 데 emacs 를 사용 하여 프로세스를 용이하게 한다는 것을 의미했습니다 . 이것은 매우 성공적이었고 학생들은 더 많은 (상호 작용적인) 형식에 대해 얼마나 감사했는지에 대해 논평했습니다. …
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.