C++ ¶
느낀점 ¶
전역변수는 가급적 안쓰고 싶었는데..
함수를 이쁘고 오버헤드적게 쓰려다보니 넣어버렸다. (단순히 함수에 변수명 하나 더적기가 귀찮았을 뿐이다.)
에이~ 난몰라~ 그냥 클래스로 만들껄 그랫나?ㅎ
함수를 이쁘고 오버헤드적게 쓰려다보니 넣어버렸다. (단순히 함수에 변수명 하나 더적기가 귀찮았을 뿐이다.)
에이~ 난몰라~ 그냥 클래스로 만들껄 그랫나?ㅎ
소스 ¶
#include <iostream>
#include <stdio.h>
using namespace std;
int a[] = {10, 40, 70, 80, 90, 99};
int b[] = {20, 30, 40, 50, 60, 70, 85, 90, 95, 97, 99};
int *result_data;
int write_point=0;
void print_data(char, int* , int );
void save_data(int);
const int END_OF_DATA=99;
void main()
{
int read_point=0;
//초기화
result_data=(int*)malloc((sizeof(a)+sizeof(b))*sizeof(int));
//연산
for (register int i=0; a[i]!=END_OF_DATA; ++i)
{
while (a[i]>=b[read_point])
{
save_data(b[read_point]);
if (a[i]==b[read_point])
++i;
++read_point;
}
save_data(a[i]);
}
save_data(END_OF_DATA);
//출력
cout << "***************\n*MERGE PROGRAM*\n***************\n";
print_data('a', a , sizeof(a)/sizeof(int) );
print_data('b', b , sizeof(b)/sizeof(int) );
print_data('c', result_data , write_point );
//메모리 해방
free(result_data);
}
void print_data(char what_is, int *data_for_print, int size)
{
cout << what_is << "= ";
for (register int i=0; i<size; ++i)
cout << data_for_print[i] << " ";
cout << "\n";
}
void save_data(int data_for_save)
{
result_data[write_point]=data_for_save;
++write_point;
}
Erlang ¶
느낀점 ¶
.. 이거 푼..걸까?..
소스 ¶
- Shell
1> lists:merge([10, 40, 70, 80, 90, 99], [20, 30, 40, 50, 60, 70, 85, 90, 95, 97, 99]). [10,20,30,40,40,50,60,70,70,80,85,90,90,95,97,99,99]










