추세 과학 기술 필기시험 문제

1. 아래 프로그램의 출력 은 얼마 입 니까?
void GetMemory(char *p)
{
	p = (char *)malloc(11);
}

int main(void)
{
	char *str = "Hello";
	GetMemory(str);
	strcpy(str,"Hello World");
	printf("%s",str);
	return 0;
}

A、Hello                      B、Hello World            C、Hello Worl               D、Run time error/Core dump
2. 다음 중 어느 것 이 이 프로그램 을 잘못 컴 파일 할 수 있 습 니까?
class A
{
public:
	A()
	{
	}
};
class B:public A
{
public:
	B()
	{
	}
};
A *pb = new B();
B b;

A、  A *pa = dynamic_cast(pb); B、 A *pa = static_cast(pb); C、 A a = static_cast(b); D、 A a = dynamic_cast(b); E、None of above dynamic_캐 스 트 의 대상 형식 이 잘못 되 었 습 니 다.3. 다음 프로그램 이 실 행 된 결 과 는 (D)void main() { char s[] = "abcde"; s += 2; printf("%c",s[0]); } A、a             B、b                 C、c                    D. 컴 파일 오류s 포인터 는 배열 의 첫 번 째 주소 입 니 다.4. 다음 프로그램 이 실 행 된 결 과 는 (D)int main(void) { char matrix[3][3]={{'a','b','c'},{'d','e','f'},{'g','h','i'}}; printf("%c",matrix[1][4]); return 0; } A、c                     B、f                        C、g                                D. h. 2. 알고리즘 문제1. 어떻게 두 개의 스 택 으로 하나의 대기 열 을 실현 하고 대기 열 작업 과 관련 된 운행 시간 을 분석 합 니까?해법: 1. 두 개의 스 택 s1 과 s2 가 있 습 니 다. 먼저 s1 에 a, b, c 를 삽입 합 니 다. 이것 은 모두 enquue 작업 입 니 다.2. 현재 dequeue 작업 을 하려 면 a 를 얻 으 려 고 합 니 다. 이때 s1 의 요 소 를 모두 팝 업 하여 s2 에 저장 할 수 있 습 니 다. 이때 s2 의 요소 순서 (아래쪽 에서 끝까지) 는 c, b, a 이 고 이때 s2. pop () 작업 을 하면 a 를 얻 을 수 있 습 니 다.3. enqueue 작업 을 계속 하면 d, f 를 삽입 하면 d, f 를 s1 에 삽입 합 니 다. 4. 이때 dequeue 작업 을 하려 면 s2 중의 b 를 직접 팝 업 합 니 다. 이것 은 지금까지 가장 오래 머 물 렀 던 요소 입 니 다. 5. dequeue 작업 을 계속 하면 s2 팝 업 c, 6. dequeue 작업 을 계속 하면 s2 가 비어 있 습 니 다. 이때 절차 2 의 작업 을 합 니 다. 7. 이런 식 으로 유추 합 니 다.두 개의 창고 로 한 대열 을 실현 하 는 목적 을 실현 하 였 다.작업 을 삽입 하 는 시간 은 O (1) 이 고 작업 을 삭제 하 는 시간 은 < = O (n) 입 니 다. 즉, 선형 시간 보다 적 고 가끔 O (1) 일 수도 있 습 니 다.2. 어떻게 두 개의 대기 열 로 하나의 스 택 을 실현 하고 스 택 작업 과 관련 된 운행 시간 을 분석 합 니까?해법: 1. 두 개의 대기 열 q1 과 q2 가 있 습 니 다. 먼저 q1 에 a, b, c 를 삽입 합 니 다. 이것 은 모두 스 택 의 push 작업 입 니 다.2. 지금 pop 작업 을 하려 면 c 를 받 아야 합 니 다. 이때 q1 중의 a, b 두 요 소 를 모두 dequeue 로 q2 에 저장 할 수 있 습 니 다. 이때 q2 의 요 소 는 a, b 이 고 q1 에 대해 dequeue 작업 을 한 번 더 하면 c 를 얻 을 수 있 습 니 다.3. push 작업 을 계속 하면 d, f 를 삽입 하면 d, f 를 q2 에 삽입 합 니 다. 4. 이때 pop 작업 을 하려 면 절차 25 를 하고 이런 식 으로 유추 하면 두 개의 대기 열 로 하나의 스 택 을 실현 하 는 목적 을 실현 합 니 다.이 과정 에서 새 push 가 들 어 오 는 요 소 는 항상 비 어 있 는 대기 열 에 삽입 되 고 빈 대기 열 은 pop 작업 후의 요 소 를 저장 합 니 다. 그러면 이 시공 간 대기 열 은 비어 있 지 않 습 니 다. 원래 의 비 어 있 는 대기 열 은 비어 있 습 니 다. 항상 이렇게 순환 합 니 다.push 와 pop 작업 에 대한 시간 은 O (n) 입 니 다.

좋은 웹페이지 즐겨찾기