컴퓨터 과학

컴퓨터 과학의 학생, 연구원 및 실무자를위한 Q & A

2
같은 수의 001과 100을 포함하는 단어의 언어가 규칙적입니까?
두 개의 하위 문자열의 동일한 수의 인스턴스를 포함하는 언어가 언제 규칙적인지 궁금합니다. 나는 1과 0의 동일한 수를 포함하는 언어가 정규 아니라, 같은 언어 것을 알고 , L은 = { W는 | 문자열 "001"의 인스턴스의 수는 문자열 "100"의 인스턴스의 수와 같습니다를 } 정기적? 문자열 "00100"이 허용됩니다.LLLLLL{w∣{w∣\{ w \mid}}\} 내 직감은 그렇지 …

2
DAG에서 두 정점 사이의 최단 경로 및 최단 경로 찾기
비가 중 DAG (방향성 비순환 그래프) D=(V,A)D=(V,A)D = (V,A) 와 두 개의 꼭짓점 sss 및 ttt 가 주어지면 다항식 시간 에서 sss 에서 까지 의 최단 경로와 최단 경로를 찾을 수 ttt있습니까? 경로 길이는 모서리 수로 측정됩니다. 다항식 시간으로 가능한 경로 길이 범위를 찾는 데 관심이 있습니다. 추신 :이 질문은 …

7
음의 배열 인덱스가 의미가있는 이유는 무엇입니까?
C 프로그래밍에서 이상한 경험을했습니다. 이 코드를 고려하십시오. int main(){ int array1[6] = {0, 1, 2, 3, 4, 5}; int array2[6] = {6, 7, 8, 9, 10, 11}; printf("%d\n", array1[-1]); return 0; } 컴파일하고 실행할 때 오류나 경고가 표시되지 않습니다. 강사가 말했듯이 배열 인덱스 -1는 다른 변수에 액세스합니다. 여전히 혼란 스럽습니다. …

4
컴퓨터 과학의 자기 연구
저는 16 살의 남성으로 최근에 친구로부터 컴퓨터 과학에 관한 큰 백과 사전을 받았습니다. 나는 보통 컴퓨터와 기술에 관심이 없지만 컴퓨터 과학이 나를 매혹하기 시작했다. 그러나 CS가 아닌 물리 및 / 또는 수학을 공부하려고하는데 내 질문은 컴퓨터 과학에 대한 자기 연구를 수행하는 것이 유용할까요? 나는 물론 BSc 수준이 아닌 CS의 기본 …

5
명제와 술어 논리를 배우는 이유
컴퓨터 과학 자나 소프트웨어 개발 관련 엔지니어가 기본 논리 연구를 기초로 이해해야한다는 중요성을 이해할 수 있습니다. 그러나 Knowledge Base? 를 사용하는 모든 종류의 지식 표현이 필요한 작업 외에 이것에 대한 지식이 명시 적으로 필요한 작업 / 작업이 있습니까? 개념적 응답이 아닌 작업 유형을 듣고 싶습니다. 내가 묻는 이유는 나의 호기심 …
14 logic 

1
인형을위한 Monadic 2 차 로직
저는 오토마타에 관심이 있지만 논리에는 관심이없는 프로그래머입니다. 나는 두 사람이 매우 밀접하게 관련되어 있다는 논문을 읽었습니다. DFA (Deterministic Finite Automata), Tree Automata 및 Visibly Pushdown Automata는 모두 모나 딕 2 차 로직 (MSO)과 관련이 있습니다. 비록 오토마타와 사람들이 (서류에서) MSO와의 관계를 설명하려고 노력했지만, 그들은 항상 논리에 대한 강력한 배경과 MSO에 …

3
이 알고리즘을 여전히 이진 검색 알고리즘으로 간주 할 수 있습니까?
두 번째 코드 kata (매번 다른 방법으로 이진 검색 알고리즘을 5 번 구현하도록 요청 함)를 수행하는 동안 다음과 같이 작동하는 약간 다른 솔루션을 생각해 냈습니다. 정렬 된 lenght 100 배열을 가지고 있고 시작 필드에 숫자 200이 있고 끝 필드에 숫자 400이있는 것을 보았습니다. 인간을 공부하는 수학으로, 필드를 검색하면 필드 35 …


1
큰 O 표기법에서 물결표는 무엇을 의미합니까?
나는 논문을 읽고 있는데, 시간 복잡도 설명에서 시간 복잡성은 라고 말합니다 .O~(22n)O~(22n)\tilde{O}(2^{2n}) 인터넷과 위키 백과를 검색했지만이 물결표가 big-O / Landau 표기법으로 무엇을 의미하는지 찾을 수 없습니다. 논문 자체에서 나는 이것에 대한 단서를 찾지 못했습니다. 어떻게합니까 평균?O~(⋅)O~(⋅)\tilde{O}(\cdot)

1
부동 소수점 반올림
IEEE-754 부동 소수점 숫자 <1 (즉, 숫자> = 0.0 및 <1.0을 생성하는 난수 생성기로 생성)에 임의의 정수 (부동 소수점 형식)를 곱하여보다 크거나 같은 숫자를 얻을 수 있습니까? 반올림으로 인해 그 정수? 즉 double r = random() ; // generates a floating point number in [0, 1) double n = some_int …

2
병합 정렬에서 "분할"단계를 피할 수 있습니까?
따라서 병합 정렬은 나누기 및 정복 알고리즘입니다. 위의 다이어그램을 보면서 기본적으로 모든 나누기 단계를 무시할 수 있는지 생각했습니다. 2만큼 점프하면서 원래 배열을 반복하면 인덱스 i 및 i + 1에서 요소를 가져 와서 자체 정렬 배열에 넣을 수 있습니다. 이러한 하위 배열을 모두 갖추면 (그림에 표시된대로 [7,14], [3,12], [9,11] 및 [2,6]) …

1
Kruskal과 Prim은 모든 MST 최소 스패닝 트리에 도달 할 수 있습니까?
나는 이것이 사실이라고 생각하지만 공식적인 증거를 얻을 수 없었습니다. 그러나 Kruskal의 알고리즘을 적용하여 최소 스패닝 트리에 도달 할 수 있습니까? 마찬가지로 Prim의 알고리즘에도 해당됩니까? 편집 : 더 정확하게 말하면 연결된 무 방향 가중 그래프에 대해 MST가 주어 졌는지 알고 싶습니다.이 MST를 생성하는 Kruskal 또는 Prim을 사용하는 일련의 단계가 보장됩니다. 예 …

1
더하기, 곱하기, 평등 만있는 랜덤 액세스 머신
문헌은 원시적 곱셈을 갖는 단가 RAM이 비합리적이라는 것을 분명히 알 수있다. 다항식 시간에 튜링 머신으로 시뮬레이션 할 수 없음 다항식 시간에 PSPACE- 완전 문제를 해결할 수 있습니다 그러나이 주제 (Simon 1974, Schonhage 1979)에서 찾을 수있는 모든 참조에는 부울 연산, 정수 나누기 등이 포함됩니다. 더하기, 곱하기 및 같음 만 있는 RAM의 …

3
미적분과 프로그래밍 언어의 차이점은 무엇입니까?
나는 미적분학과 프로그래밍 언어라는 것에 대해 혼란스러워합니다. 나는 미적분학이 프로그램의 동등성에 대한 추론을위한 공식적인 시스템이라고 생각하는 경향이있다. 프로그램에는 기계에 의해 지정된 작동 의미론이 있으며 결정적이어야합니다. 이런 식으로 언어 대한 (정확한) 미적분 은 프로그램 동등성을위한 확실한 방법입니다.엘엘L 이것은 나에게 합리적인 분열처럼 ​​보이지만 이것이 일반적으로 받아 들여지는 의미입니까? 아니면 잘못 됐나요? 관련, …

3
문맥없는 문법에 매개 변수를 추가하면 무엇을 얻을 수 있습니까?
나는 indendation에 민감한 언어에 대한 문법을 ​​생각하고 있었고 CF 문법이 매개 변수와 결합되면 트릭을 수행하는 것처럼 보입니다. 예를 들어, ANTLR과 유사한 형식의 단순화 된 Python 문법에 대해이 단편을 고려하십시오. // on top-level the statements have empty indent program : statement('')+ ; // let's consider only one compound statement and one …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.