우주적 사고

우리는 뇌는 참 신기합니다.

백구씨쥔장 2005. 3. 23. 23:58
뇌에 자료를 저장하거나 찾을 때 random access보다 sequential access를 많이 사용하는 것 같습니다.

이게 무슨 말이냐면 a,b,c,d,e,f,g,h,i,j,...,x,y,z 26개의 알파벳이 있습니다.
그렇다면 11번째 알파벳은 뭐??

잘 모르겠죠? 아마도 당신은 지금 a,b,c,d,...손가락을 꼽으며 세고 있을 겁니다.
당신은 a,b,c,d,e,..를 순서대로 외웠고 찾을 때도 순서대로 찾기만 했으니깐~

random access가 가능하려면 (1 - a), (2 - b), (3 - c) ...(13 - l ) ....이런 식으로 외워야겠죠~

그러면 13번째는 "l"이라고 바로 말할 수 있습니다.

근데 만약 (a - 1), (b - 2) .... 이렇게 외웠다면...?

13번 째 뭐?
이것도 빨리 찾으려면 (1 - a), (2 - b)...이렇게 외워야합니다..ㅋㅋ
역인덱스를 갖구 있어야하니깐요~

데이터 a~z를 무작위로 직접접근하려면 어쨋든 순서를 인덱스로 하는 자료형태로 나눠 외워야합니다.
저런 순서 외우는 인간 별로 없죠. 만약 있으면 바보아니면 천재!!

대부분의 사람들은 순차적으로 a부터 z까지 외웁니다.

데이터를 어떤형태로 머리속에 넣을지는 개개인 판단의 문제지만 잘 외울 수 있는 가능성이 있는 방법은 참 많은 것 같습니다.

예를 들어, 추석, 추억, 가을, 가나, 가나다라를 저장할 경우, 외워야하는 총 글자수는 12글자 입니다.

근데 밑에 보는 것처럼 모든 단어의 첫글자를 맨 위에, 두번글자를 그다음에..

즉, 각 음절을 트라이 형태으로 나눠서 외우면 8글자만 외우면 됩니다.

물론 외울때, 모든단어의 첫글자만..쭈~~~욱,
두번째 글자만 쭈~~~욱,
각 글자의 위치를 찾아내는 두뇌연산이 필요합니다.

가 ------- 추 ------------------ 단어의 1번째 글자
| |
나 -- 을 석 – 억 ------------------ 단어의 2번째 글자
|
------------------ 단어의 3번째 글자
|
------------------- 단어의 4번째 글자

만약 이렇게 외우면, 단어를 찾는 속도도 n / 2 k ~ 1 ==> k ~ log₂ⁿ
단어의 개수가 무한히 많아진다구 할때, 엄청나죠~~

컴퓨터나 이런짓하지~ 인간도 할 수 있을까??? 라는 의문이 드신다구요?
음~~~ 난 나이먹어서 일단 안될 것 같고, 자식 낳으면 한번 시켜보고 답변해드리겠습니다.

세상의 모든 것들을 몇가지 컬렉션으로 나누고,
각 컬렉션에 맞는 알고리즘을 적용해서 암기하고 본인 나름대로 인덱스할 수 있게~~~~

인간의 뇌가 아직 3%인가 밖에 안쓴다던데..가능하긋지(아니, 이런 무책임한 말을~)