어떻게 완전히 투석 데이터 구조, 알고리즘,이 과정에?

그림 삽입 설명 여기
당신은 데이터 구조와 알고리즘을 읽을 수 없기 때문에, 나에게 이야기 한 번 자신의 바보 같은 의심이 있나요? 사실, 문에 많은 사람들이 첫 접촉이 클래스는,이 느낌이있을 것이다, 나는 상형 문자처럼 모호하게, 데이터 구조 및 알고리즘 매우 추상적을 느낍니다. 그것은 이러한 이유로 많은 초보자가이 과정 움찔입니다.

개인적으로, 나는 사실, 진짜 이유는 당신이 좋은 찾을 수없는 생각 학습 방법을 연구의 초점을 포착하지 않았다. 사실, 자료 구조와 알고리즘은 여러 가지 공통없는, 기본 지식은 소수에 불과하다. 당신은 배우고 그렇게 어려운 것 같지 않았다, 배울 수있는 올바른 방법 마스터되면 있지만 높은 IQ, 두꺼운 기초를 필요로하지 않습니다 .

대학 시험에 모든 교사가의 초점을 그린다을 기억 하는가? 오늘, 나는 당신에게 연구의 몇 가지 팁을 요약 말해주지,이 과정에서 우리의 초점을 그리는 줄 것이다. 다음으로 믿고, 당신은 배가, 대상 배우게됩니다.

데이터 구조는 무엇인가? 알고리즘은 무엇인가?

데이터 구조 및 알고리즘 교과서의 대부분은 오프닝에서이 두 개념의 명확한 정의가 될 것입니다. 그러나 이러한 정의는이 두 개념은 상당한 도움이되지 않습니다 이해 실제로 죽은 풀 정의 오류로 당신을 만들기 위해, 추상적이다. 결국, 우리는하지 테스트, 학습 개념은 다시 감옥에 그래서, 나는 그것이 쓸모 사용하지 않습니다.

우리는 필요가 깊은 엄격한 정의를 발굴 없습니다 만, 그 평균이 개념을 이해 할 필요가 없습니다하지 않는다고 말했다 있지만. 지금은 다양한에서 가서이 두 개념의 데이터 구조와 알고리즘을 이해하는 데 도움이, 두 가지 수준의 범위를 좁힐.

로부터 넓은 의미, 이는 데이터 구조의 세트를 저장하는 데이터 구조를 말한다. 알고리즘의 작동 방법은 데이터의 집합이다.

저장 도서관 책은 당신이 그것을 본해야합니까? 쉽게 액세스를 들어, 책을 사서 일반적인 범주은 "저장"입니다. 번호는 일정한 규칙에 따라,이 책은 "데이터"저장 구조이다.

그럼 우리가 수행하는 방법에 대한 책을 찾을? 거기 당신은 확실히 로컬 하나를 찾을 수있는 많은 방법이있다, 또는 당신은 카테고리, 인문, 과학이나 선반을 찾습니다 컴퓨터의 수에 따라 예약 한 다음 지금 찾기를 클릭 할 수 있습니다. 대략적으로 말하면, 이러한 검색 방법은 알고리즘이다.

로부터 좁은 입니다 의미, 우리는 칼럼에 대해 얘기, 그러한 큐, 스택, 힙, 이진 검색, 동적 계획과 같은 잘 알려진 데이터 구조 및 알고리즘을 의미합니다. 이들은 선조의 지혜의 결정, 우리는 직접 사용할 수 있습니다. 이 고전적인 데이터 구조와 우리가 이야기하는 것이 알고리즘 테스트 및 확인의 많은 후, 많은 이전의 연습 장면에서 추출, 우리는 효과적으로 도움이 개발의 많은 실제 문제를 해결할 수 있습니다.

이 데이터 구조 및 알고리즘 것을 무슨 상관입니까? 왜 책의 대부분은 어떤면에서이 두 가지를 넣어?

데이터 구조와 알고리즘은 상보 때문이다. 데이터 구조에 고유 한 알고리즘에 작용 알고리즘 서비스를위한 데이터 구조. 따라서, 우리는 알고리즘의 관점에서 분리되지 데이터 구조, 알고리즘은 데이터 구조의 관점에서 분리 될 수있다.

배열은 랜덤 액세스의 특징을 가지고 있기 때문에, 예를 들어, 종래의 바이너리 서치 알고리즘은 데이터를 저장하는 배열이 필요하다. 우리는이 데이터 구조를 목록으로 선택한다면, 이진 검색 알고리즘은하지 작업 때문에 체인이 랜덤 액세스를 지원하지 않는 것입니다.

데이터 구조는 데이터를 구성하는 단지 방법, 정적이다. 당신이 건설 알고리즘에 기초를 작동하지 않으면, 데이터 구조가 분리되어 존재는 쓸모가 없다.

이제 데이터 구조와 그것의 알고리즘을 명확하게 이해하지? 이 보호 구역으로의이 학습 자료 구조와 알고리즘을 정확하게하는 방법을 살펴 보자.

이 열은 어떤 기초를 배울 필요가?

은 "알고리즘"단어의 데이터 구조와 알고리즘을 참조하십시오, 많은 사람들이 난해한 수학적 지식을 많이 포함 할 것이다 "수학"알고리즘을 생각합니다. I의 수학 기초가 매우 좋지 않다, 아 배울 매우 어려울 것이다?

데이터 구조와 알고리즘은 물론 때때로, 특히 시간 분석 알고리즘의 공간 복잡도를 증명하기 위해, 일부 수학 추론을 포함하지 않습니다,하지만 당신은 절대적으로 이것에 대해 걱정할 필요가 없습니다.

매우 복잡한 수학적 증거와 추론이 있기 때문에이 칼럼은 "알고리즘 소개"로되지 않습니다. 거 야 깊은 개념에서 응용 프로그램으로, 당신에게 조금 설명합니다. 언제 까지나 당신이 가지고있는 높은 학교 수학 수준을, 그들은 배울 수 있습니다 .

물론, 내가 당신에게 최고의 일부하고자하는 프로그래밍 기초를 당신이있는 경우, 프로젝트 경험을 더 나은. 내가 데이터 구조 및 알고리즘의 효율성을 개선하는 방법을 알려 그래서, 저장 공간을 절약하는 방법, 당신은 매우 직관적 인 느낌을 갖게됩니다. 각각의 개념 및 구현 프로세스, 실제 현장에서 시작하기 때문에 나는뿐만 아니라 당신에게 가르 칠 것 "무엇을"은 "왜", 당신은 질문의 동일한 유형이어야 발생 말한다 "어떻게."당신에게 가르 칠 것

이 연구는 무엇에 초점을?

언급 데이터 구조와 알고리즘, 사람들이 매우 두통이 많이, 너무 많은 내용이 있기 때문에. 자, 내가 먼저 방과 후에 무엇을 배워야하는지 분류 도움이됩니다. 당신은 당신이 속한 무대 어떤 모양을 제어 할 수 있습니다, 다음 학습을위한 장소가있다.

- 데이터 구조와 알고리즘을 배우고 싶어, 하나는 데이터 구조와 알고리즘의 가장 중요한 개념을 마스터해야합니다 분석의 복잡성을 .

그것이 얼마나 중요의 개념? 말하자면, 거의 데이터 구조를 차지하고이 과정의 알고리즘 절반, 데이터 구조 및 학습 알고리즘의 본질이다.

해결하기위한 데이터 구조와 알고리즘 따라서 자원 소비 효율을 고려하는 방법을 필요로, 더 많은 데이터의 문제 빠른 저장 및 처리를 저장하는 방법이며,이 분석의 복잡성이다. 당신은 단지 데이터 구조와 알고리즘, 사용의 특성을 파악하지만, 분석의 복잡성을 배우지 않은 경우에 따라서, 단지 동작 공식을 알고 동일하지만 심장을 파악하지 않았다. 만 심장 이득, 획이 트릭을 이길 수 없다 할 수있다!

따라서 내용의 분석의 복잡성, 난 당신이 철저하게 큰 길이를 홍보 줄 것이다. 또한 큰 노력에 씹을 승리해야하고, 매우 숙련을 할을해야합니다. 그렇지 않으면 배우기 어려운 자료 구조와 알고리즘 뒤에.

분석의 복잡성을 얻으려면, 다음은 데이터 구조와 알고리즘의 텍스트 내용을 입력하는 것입니다.

포괄적 인 이해를 가지고 당신에게 데이터 구조와 알고리즘을 제공하기 위해, 나는 데이터 구조 및 알고리즘 책의 거의 모든 지식이 언급 될 것입니다 커버 그림을 그렸습니다.

그러나, 초보자, 또는 비 알고리즘 엔지니어로, 당신은 내부의 뷰의 모든 지식 포인트가 필요하지 않습니다. 거의 우리의 공동 개발에 사용되지 않는 등 양자 그래프, 최대 유량, 같은 많은 고급 데이터 구조와 알고리즘,. 그래서, 당신은 일시적으로 볼 수 없습니다. 나는 다시, 우리는 키를 찾을 수 배울 수 배웁니다. 에 관계없이 연구, 눈썹과 수염의 초점을 잡고, 경우, 확실히 배우기 더 어려울 것입니다.

그래서, 내 자신의 학습 경험뿐만 아니라 인터뷰와 함께, 개발 경험이 년, 나는 (20)을 극복하기 위해 하나 하나에 초점만큼, 면접이나 직장에 대처하기 위해 필요 여부, 20 개 가장 일반적이고 가장 기본적인 데이터 구조와 알고리즘을 요약 지식의 포인트는 충분하다.

그리고 거기에 10 개 개의 데이터 구조 , 배열, 연결리스트, 스택, 큐, 해시 테이블, 이진 트리, 힙, 점프 표, 그래프, 트리는 트리 : 10 알고리즘 재귀, 정렬, 이진 검색, 검색, 해시 알고리즘, 욕심 알고리즘은 : 분열 컨커 알고리즘, 알고리즘, 동적 프로그래밍 문자열 정합 알고리즘 되돌아.

데이터 구조 및 알고리즘 더 복잡한 내용이 기본 데이터 구조와 알고리즘을, 마스터, 매우 빠르고 아주 쉬운 것입니다.

자료 구조와 알고리즘을 학습하는 과정에서, 당신은 또한 실제적인 문제를 해결하기위한 적절한 "와" ","단지 기계적 학습을하지 않고 할, 그러나 그것의 "기원", "자신의 특성을 배우고 학습,주의를 기울여야한다 응용 프로그램 시나리오. " 각 데이터 구조 나 알고리즘, 나는 몇 가지 측면에서 자세히 설명합니다. 만큼 당신이 마스터로 나는 응용 프로그램의 내용에서 말하는 각 레슨은 개발에 유연하게 할 수 있습니다.

자료 구조와 알고리즘을 학습하는 과정은, 그래서, 아주 좋은 정신 훈련 과정 수동적으로 기억하지 않는다 , 더 변증 법적 사고로 더 이유를 물어보다 . 당신은 항상 그렇게 주장했다면, 당신은 발견 할 것이다, 그래서 당신이 마친 후, 코드가없는 도움의 계정에 여러 가지의 성능을 복용합니다 쓰기, 시간 복잡도의 수는 공간의 복잡성이 나타납니다 매우 높은 스팸 코드는 적게. 여러분의 프로그램은 정말 연습 내부 강도를 얻었다.

一些可以让你事半功倍的学习技巧

前面我给你划了学习的重点,也讲了学习这门课需要具备的基础。作为一个过来人,现在我就给你分享一下,专栏学习的一些技巧。掌握了这些技巧,可以让你化被动为主动,学起来更加轻松,更加有动力!

1.边学边练,适度刷题

“边学边练”这一招非常有用。建议你每周花1~2个小时的时间,记住,时间要控制好,建议你每周花1~2个小时的时间,时间差别不要太偏离我的建议,学会管理时间的同时注重效率!集中把这周的三节内容涉及的数据结构和算法,全都自己写出来,用代码实现一遍。这样一定会比单纯地看或者听的效果要好很多!

有面试需求的同学,可能会问了,那我还要不要去刷题呢?

我个人的观点是可以“适度”刷题,但一定不要浪费太多时间在刷题上。我们学习的目的还是掌握,然后应用。除非你要面试Google、Facebook这样的公司,它们的算法题目非常非常难,必须大量刷题,才能在短期内提升应试正确率。如果是应对国内公司的技术面试,即便是BAT这样的公司,你只要彻底掌握这个专栏的内容,就足以应对。

2.多问、多思考、多互动

学习最好的方法是,找到几个人一起学习,一块儿讨论切磋,有问题及时寻求老师答疑。 但是,离开大学之后,既没有同学也没有老师,这个条件就比较难具备了。

不过,这也就是咱们专栏学习的优势。专栏里有很多跟你一样的学习者。你可以多在留言区写下自己的疑问、思考和总结,也可以经常看看别人的留言,和他们进行互动。

除此之外,如果你有疑问,你可以随时在留言区给我留言,我只要有空就会及时回复你。你不要担心问的问题太小白。因为我初学的时候,也常常会被一些小白问题困扰。不懂一点都不丢人,只要你勇敢提出来,我们一起解决了就可以了。

而你要做的就是,避免一知半解,要想尽一切办法去搞懂我讲的所有内容。

3.打怪升级学习法

学习的过程中,我们碰到最大的问题就是,坚持不下来。 是的,很多基础课程学起来都非常枯燥。为此,我自己总结了一套“打怪升级学习法”

游戏你肯定玩过吧?为什么很多看起来非常简单又没有乐趣的游戏,你会玩得不亦乐乎呢?这是因为,当你努力打到一定级别之后,每天看着自己的经验值、战斗力在慢慢提高,那种每天都在一点一点成长的成就感就不由自主地产生了。

所以,我们在枯燥的学习过程中,也可以给自己设立一个切实可行的目标,就像打怪升级一样。

比如,针对这个专栏,你就可以设立这样一个目标:每节课后的思考题都认真思考,并且回复到留言区。当你看到很多人给你点赞之后,你就会为了每次都能发一个漂亮的留言,而更加认真地学习。

当然,还有很多其他的目标,比如,每节课后都写一篇学习笔记或者学习心得;或者你还可以每节课都找一下我讲得不对、不合理的地方……诸如此类,你可以总结一个适合你的“打怪升级攻略”。

如果你能这样学习一段时间,不仅能收获到知识,你还会有意想不到的成就感。因为,这其实帮你改掉了一点学习的坏习惯。这个习惯一旦改掉了,你的人生也会变得不一样。

4.知识需要沉淀,不要想试图一下子掌握所有

在学习的过程中,一定会碰到“拦路虎”。如果哪个知识点没有怎么学懂,不要着急,这是正常的。因为,想听一遍、看一遍就把所有知识掌握,这肯定是不可能的。永远记住学习知识的过程是反复迭代、不断沉淀的过程

如果碰到“拦路虎”,你可以尽情地在留言区问我,也可以先沉淀一下,过几天再重新学一遍。所谓,书读百遍其义自见,我觉得是很有道理的!

나는,이 학습 방법의 이야기뿐만 아니라, 사실, 학습 과정에 대한 지식을 완벽하게 적용이 물론 학습을위한. 이러한 방법의 실천에 대해 알아 보려면이 열을 사용할 수 있습니다. 결과는 좋은으로 리 마케팅 후 학습 과정 인 경우.

내용 요약
오늘, 난 당신이 학습 계획 데이터 구조와 알고리즘, 복잡성 분석 및 데이터 구조 (10) 및 (10 개) 알고리즘의 초점을 그릴 할게요.

이러한 요소는 일반적으로 경험을 인터뷰, 내 연구와 작업을 기반으로,주의 깊게 선별. 당신이 내용을 마스터 매일 인터뷰를 충족되면, 작업은 기본적으로 아무 문제가 없다.

더 연습하면서 또한, 또한, Daguai 업그레이드 및 침전 방법의 학습이 개 상대적으로 일반적인 방법이 있습니다, 더 생각을 물어, 당신 같은 학습 등 학습 능력, 내 요약의 일부를 함께 공유 할 수 있습니다. 이러한 학습 기술을 마스터, 당신은 학습 과정을보다 효과적으로 할 수 있습니다. 그래서, 당신은 실제 오을해야!

마지막으로, 블로거이 문서는 괴짜 왕 청 교사 데이터 구조와 알고리즘 칼럼에서 발췌 한이 약 위의 이야기 걱정할 필요가 위치에 있지 않습니다 그래서, 블로거 나는 간단하게 요약하고 간단하게 몇 가지 주요 식별 주에 설계를 , 다음 도로, 블로거와 나는 결국,이 칼럼의 지혜를 공유 드리겠습니다 지식을 기억하고 항상 학습의 과정이 반복, 연속 침전 과정이다 , 그러나 나는이 문장이 완벽하지 생각하지만, 나는 블로거 생각 : 프로세스 지식을 학습, 반복, 연속 침전 과정을 공유하는 것이 행복하다 .

데이터 구조 및 알고리즘 관련 기사를 추천 :

애니메이션 | 대학 정렬 알고리즘의 4 년이 끝나기 전에 철저하게해야합니다

데이터 구조 및 알고리즘 분석 얼마나 중요한가?

시간과 공간 복잡성 분석 : 자원 소비 통계 알고리즘의 효율성을 분석하는 방법

...

데이터 구조 및 알고리즘 열

마지막으로, 마지막으로, 블로거 말 :
그림 삽입 설명 여기

이 문서 도움이 조금이라도, 당신에게 노래 칭찬을 선택하십시오, ~ 감사합니다

나는 좋은 냄비 친구 오 말을오고있다 ... 당신이 기술을 열망 기술, 기술의 추구를 탐험하기 위해, 공공 숫자에 초점을 환영합니다 ...

그림 삽입 설명 여기

추천

출처www.cnblogs.com/yichunguo/p/11855188.html