목록분류 전체보기 (28)
HOT프로그래밍
시작하기전에 한가지 주의해야할 것은 sql쿼리문을 쓸 때 모두 다 대문자or소문자로 쓰는걸 추천합니다프로그래머들끼리의 약속이라고 보면 될 것 같아요 SQL에는 DML - 데이터 조작명 DDL - 데이터베이스자체 생성/변경 명령 DCL - 데이터 제어 명령이렇게 3가지가 있어요 좀더 자세하게 보면 DML(조작)SELECT명령(read,읽어오기명령) INSERT명령(write,삽입명령)DELETE명령(write,제거명령)UPDATE명령(write,데이터갱신)DDL(정의) 데이터 생성 테이블 생성컬럼(열) - 속성생성제약사항 생성(primary key)추가로 이런것들 변경하는 것까지 포함이 되는데DDL은 GUI로 실행이 가능해서 쓸일이 거의 없다고 하네요 DCL(제어) DCL은 제어,트랜젝션(실행의 묶음,단위..
학원에 있을 때 정렬에 대해 공부를 한적이 있다항상 원리는 금방 이해가 갔는데 이걸 코드로 작성하려니 감이 안잡혔다선택정렬까지는 그려러니 했는데 힙정렬부터는 정말 맨붕이 왔다 5시간동안 개념만 보고 코드창을 치려고하면 삽질은 커녕 손도 못 대고 있으니깐 결국 선생님이 샘플을 보여줬다그래서 그 코드를 집가서 보고 따라쳐보기도하고 조금씩 바꿔보기도하고 나름대로 진지하게 연구한 끝에 나는 결정했다이 코드를 외우기로...ㅜㅜ그래서 정렬을 요구하는 문제를 풀 때 마다 외운 코드를 그대로 적용했고 한계단 한계단 넘어가다가 퀵정렬을 배울 차례가 되었다코딩을 하는데 있어서 정렬의 중요성을 몸소 체감한 나는 퀵정렬만큼은 완전히 내 것으로 만들어야 겠다고 생각하였으나 역시 넘나 어려운것ㅠㅠ그래서 결국 이것도 샘플을 보고 ..
이문제는 그래프 구조를 처음 접하면서 풀게 된 문제이다지금 보면 코드는 굉장히 간단한데 8번의 오류끝에 풀어낸 뜻깊은 문제이다처음에 깊이우선탐색이 뭔지도 모르고 이해도 안갔는데 풀고나니깐 '아 이런거구나'하는 생각이 들었다 #include int n,st; int edge[10][10]; int visit[100]; void DFS(int i){ int j; printf("%d ",i); visit[i] = 1; for(j=1; j
이 문제는 Queue를 접하고나서 두번째로 풀게된 문제효율적으로 소수판별하는 법까지 알게 되어서 두마리의 토끼를 다잡은 문제이다이문제 역시 푸는데 시간이 꽤 걸렸지만 걸린만큼 풀었을 때의 희열은 그 어떤 것과도 비교할 수 없다 http://59.23.150.58/30stair/prime_path/prime_path.php?pname=prime_path 4 자리 수 두 개가 입력으로 주어진다. 두 수는 모두 소수(prime number)이다.처음 수는 출발수 이고 다음 수는 도착수 이다. 어떤 수에서 다음 수로는 이전 수에서 한 자리수 만을 변경해서 가능하다. 물론 각 단계별로 만들어 지는 수도 소수여야 한다.출발 수에서 도착수로 가는 최단 거리를 구하는 게 문제이다.예로 , 출발수로 1033 이 도착수로..
이 문제는 내가 자료구조Queue를 입문했을 때 처음으로 푼 문제인만큼 굉장히 특별한 문제다문제내용도 굉장히 재밌어보여서 안드로이드스튜디오를 입문하면서 만든 첫 미니프로젝트에도 퍼즐형 게임으로 넣어놨다여담이지만 어플이름은 '알고리즘 게임팩'인데 정말 아무것도 모를 때라 그런지 지금 내가봐도 조잡하다..(간접광고) http://59.23.150.58/30stair/catch_cow/catch_cow.php?pname=catch_cow 위 링크에 문제내용이다.문제를 풀었을 때 3~4시간을 삽질하다가 힌트를 받고 겨우 풀었지만 그 고통이 자료구조 큐를 이해하는데굉장히 큰 역할을 해준 것 같다 농부 존의 소 중에서 한 마리가 집이 싫어 도망갔다. 그는 이 소를 즉시 잡아들이고 싶어한다.그는 1 에서 N ( 0
이 문제를 푼지 1년이 다 되어가지만 나름 스택자료구조공부를 하는데 있어서 굉장히 많은 도움이 되었던 문제인지라 한번 끄적이게 되었습니다ㅇㅅㅇ 문제는!! ↓↓요기 있어여!! http://59.23.150.58/30stair/paren/paren.php?pname=paren 4개의 기호 ‘(’, ‘)’, ‘[’, ‘]’를 이용해서 만들어지는 괄호열 중에서 올바른 괄호열이란 다음과 같이 정의된다.한 쌍의 괄호로만 이루어진 ‘()’와 ‘[]’는 올바른 괄호열이다.만일 X가 올바른 괄호열이면 ‘(X)’이나 ‘[X]’도 모두 올바른 괄호열이 된다.X와 Y 모두 올바른 괄호열이라면 이들을 결합한 XY도 올바른 괄호열이 된다.예를 들어 ‘(()[[]])’나 ‘(())[][]’ 는 올바른 괄호열이지만 ‘([)]’ 나 ..
#include//표준입출력 헤더파일 int main(void)//프로그램의 시작점!! { printf("Hello World!");//콘솔창에 Hello World! 출력! return 0;//0을 반환하고 종료! } 위 코드는 간단하게 콘솔창에 hello world를 출력하게되는 코드입니다 여기서 #include를 빼면 어떻게 될까요? 결론만 먼저 말하면 오류가 뜨면서 실행조차 안될겁니다. 저희가 printf라는 함수를 호출하여 콘솔창에 "Hello World" 라는 문자열을 출력했습니다. 근데 여기서 printf라는 함수는 어디서 난 것 일까요? 바로 #include가 printf함수를 정의해주는 역할입니다. 정확한 명칭은 '표준입출력헤더파일'이라고 하죠. C언어에는 수많은 표준라이브러리들이 존재합..
#01. C언어란? 보통 대학생 새내기들이나 프로그래밍을 배우고자하는 사람들의 대부분은 C언어를 먼저 배우게 됩니다 왜일까요? 확실한 정답은 없습니다 하하 허나 확실한 건, C언어는 모든 프로그래밍 언어의 시발점이고, 활용 범위가 넓습니다또한, C언어는 고급언어중에서 가장 하드웨어의 깊숙한 곳까지 건들 수 있다는 장점이 있습니다. 잠깐여기서.."입문자가 굳이 하드웨어의 깊숙한 곳까지 건들필요가 있나요?" 그게아니라C언어를 배우게 되면 컴파일했을때 메모리구조가 어떻게 변화하고 하드웨어가 어떻게 동작하는지까지 알 수 있다는거죠하드웨어가 어떻게 동작하는지 파악하는지 모르고 코딩하는 일은 보안성에서나 효율성에서나 굉장히 위험한 행동입니다 그렇기 때문에!! 저희는 C언어를 공부하면서 코딩하는데 기본적인 문법들을 ..