这门课解决什么痛点,适合谁学

对于想转行程序员或刚入职场需要夯实基础的读者来说,最大的困境往往不是“不够努力”,而是“方向分散”。很多初学者在第一语言上投入大量时间后,发现目标岗位要求的语言完全不同,重新入门的成本极高。这套课程的核心价值在于“双语并行”,它不强迫你二选一,而是让你在相对短的时间内建立Python和Java两种主流语言的思维框架。这种设计特别适合那些目标不明确、或者希望增加就业容错率的转行者和应届生。

课程门槛较低,适合零基础用户,但需要一定的自律性。因为5周的时间跨度较短,且要同时掌握两门语言的基础,节奏会比单语言课程紧凑。如果你已经有其他编程语言的基础(如C++或JavaScript),学习会轻松很多;如果是纯小白,建议每天预留至少2小时用于编码练习,而非仅仅观看视频。课程开头的“互动”章节非常关键,它涵盖了简历攻略和面试揭秘,这是许多纯技术课缺失的环节,能帮助学习者从一开始就建立以就业为导向的学习目标,避免陷入“为了学算法而学算法”的误区。

学完能独立做什么,资料怎么配合练习

完成本课程后,你将能够独立使用Python或Java解决基础的编程问题,理解并实现常见的数据结构操作,如数组、字符串处理、基础排序和查找算法。更重要的是,通过对比两种语言,你会明白“语法糖”与“底层逻辑”的区别,例如Java的强类型约束如何帮助编写更稳健的企业级代码,而Python的简洁性如何加速原型开发。这种双语视角让你在面对不同技术栈的面试时,能快速切换语境,展现出更强的适应能力。

建议的学习顺序是:先完整观看第一章关于求职准备的内容,明确自身的简历短板和面试恐惧点;随后进入代码学习阶段,采取“对照学习法”。不要同时敲击两门语言的代码,建议先专注学完Python的一个模块(如循环与判断),再用Java复现相同的逻辑。这种重复而非平行的学习方式,能让你深刻体会到两种语言在语法结构上的异同。资料中的源码和PDF是重要的复习工具,建议在学习每个知识点后,遮住源码自行默写一遍,再对照检查。对于初学者,不必追求一次性精通两门语言的高级特性,掌握基础语法和常见算法的实现即可,后续的进阶可以通过实际工作项目中的需求来驱动深入学习。

课程目录

1-58-300x149.png   2024-3-15 18:

41 上传 课程介绍: 这是一门包含Python和Java双语教学的课程,旨在帮助学习者从零开始,仅需5周的时间就能掌握这两种编程语言以及基础算法。 Python和Java双语教学: 我们同时涵盖Python和Java两种主流编程语言,让学生能够熟练掌握这两门语言,为将来的编程工作打下坚实基础。 ├──00【课件资料】九章算法基础班 Python+Java | └──源码+pdf.exe 47.35M ├──

01 第一章【互动】零基础找CS工作,该如何准备?(Python 语言) | ├──01 python-1.1自我介绍 .mp4
 2.76M | ├──01 python-1.2本节重点 .mp4
 909.13kb | ├──01 python-1.3简历全攻略 .mp4
 40.80M | ├──01 python-1.4面试大揭秘 .mp4
 25.44M | ├──01 python-1.5 课程介绍 .mp4
 38.29M | ├──01 python-1.6.1交互式环境运行代码VS将代码写到py文件中 .mp4
 26.85M | ├──01 python-1.6.2 动态类型语言VS静态类型语言 .mp4
 4.48M | ├──01 python-1.6.3 整数运算 .mp4
 10.73M | ├──01 python-1.6.4 练习一 .mp4
 6.23M | ├──01 python-1.6.5 浮点数和布尔型变量运算 .mp4
 20.30M | ├──01 python-1.6.6 练习二及运算优先级 .mp4
 20.01M | ├──01 python-1.6.7 短路运算 .mp4
 8.33M | ├──01 python-1.6.8 练习三及变量命名风格 .mp4
 24.31M | └──

01 python-班班有话说 .mp4
 527.03kb ├──

02 第二章【互动】零基础找CS工作,该如何准备?(Java 语言) | ├──

02 Java-int型变量运算 .mp4
 25.28M | ├──

02 Java-Java课程安排及课前准备 .mp4
 57.72M | ├──

02 Java-班班有话说 .mp4
 415.98kb | ├──

02 Java-编程语言 .mp4
 10.93M | ├──

02 Java-编程语言中的变量 .mp4
 49.86M | ├──

02 Java-变量 .mp4
 8.27M | ├──

02 Java-变量命名风格 —— 牛逼程序员的敲门砖 .mp4
 34.66M | ├──

02 Java-变量命名风格 .mp4
 14.30M | ├──

02 Java-简历大揭秘 .mp4
 43.11M | ├──

02 Java-简历知识点 .mp4
 10.53M | ├──

02 Java-面试大揭秘 .mp4
 22.62M | ├──

02 Java-面试知识点 .mp4
 9.93M | └──

02 Java-声明变量 .mp4
 14.27M ├──

03 第三章【互动】编程基础知识:循环、函数与面向对象(Python 语言) | ├──03 python-2.1 本节重点和课前回顾 .mp4
 9.49M | ├──03 python-2.2.1 如何写好if语句 .mp4
 36.70M | ├──03 python-2.2.2 练习一 .mp4
 11.37M | ├──03 python-2.2.3 for循环 .mp4
 42.28M | ├──03 python-2.2.4 循环终止及while语句 .mp4
 31.41M | ├──03 python-2.3.1 函数 .mp4
 49.63M | ├──03 python-2.3.2 练习二 .mp4
 3.94M | ├──03 python-2.4.1 什么是面向对象及对象的概念 .mp4
 9.32M | ├──03 python-2.4.2 类的概念 .mp4
 44.92M | ├──03 python-2.4.3 什么是面向对象编程及封装性 .mp4
 38.54M | ├──03 python-2.4.4 练习三 .mp4
 9.87M | ├──03 python-2.5 总结 .mp4
 1.73M | ├──

03 python-补充-构造函数 .mp4
 13.68M | └──

03 python-补充-权限控制 .mp4
 25.43M ├──

04 第四章【互动】编程基础知识:变量与程序控制流(Java 语言) | ├──

04 Java-boolean类型及其操作 .mp4
 27.08M | ├──

04 Java-char类型和Unicode .mp4
 57.90M | ├──

04 Java-if语句 .mp4
 37.04M | ├──

04 Java-IntelliJ and Sublime .mp4
 40.10M | ├──

04 Java-浮点数及数据类型转换 .mp4
 36.36M | └──

04 Java-数组和循环 .mp4
 46.97M ├──

05 第五章【直播】CS 工作介绍,算法基础知识 | └──

05 CS 工作介绍,算法基础知识 .mp4
 278.23M ├──

06 第六章【互动】列表、元组、字符串与引用(Python 语言) | ├──06 python-List的增删改查-1 .mp4
 27.09M | ├──06 python-List的增删改查-2 .mp4
 35.92M | ├──

06 python-String的基本操作 .mp4
 11.90M | ├──

06 python-String的介绍 .mp4
 46.88M | ├──

06 python-本节重点和上节回顾 .mp4
 5.98M | ├──

06 python-练习一 .mp4
 27.44M | ├──

06 python-列表生成器 .mp4
 7.89M | ├──

06 python-内存模型 .mp4
 25.69M | ├──

06 python-什么是数据结构 .mp4
 5.64M | ├──

06 python-修改引用VS修改对象 .mp4
 23.77M | ├──

06 python-引用的第三个例子 .mp4
 20.15M | ├──

06 python-引用的第一个例子和第二个例子 .mp4
 14.26M | ├──

06 python-元组 .mp4
 10.05M | └──

06 python-总结 .mp4
 5.62M ├──

07 第七章【互动】String、面向对象、Reference、数据结构(Java 语言) | ├──

07 Java-Reference-Java的内存模型 .mp4
 25.99M | ├──

07 Java-Reference-变量赋值和函数传参 .mp4
 22.17M | ├──07 Java-Reference-基本数据类型变量和引用 .mp4
 31.27M | ├──

07 Java-Reference-空引用null .mp4
 16.85M | ├──

07 Java-Reference-数组和字符串 .mp4
 31.88M | ├──

07 Java-数据结构定义及ArrayList .mp4
 36.40M | ├──

07 新Java-field和method的修饰符 .mp4
 50.93M | ├──

07 新Java-String及其常用操作 .mp4
 11.99M | ├──

07 新Java-初识类和对象 .mp4
 15.35M | ├──

07 新Java-构造函数 .mp4
 49.71M | ├──

07 新Java-函数的调用 .mp4
 25.20M | ├──

07 新Java-函数的定义 .mp4
 18.25M | ├──

07 新Java-面向对象的基本特性之封装 .mp4
 34.24M | ├──

07 新Java-真题讲解 String to int .mp4
 20.81M | └──

07 新Java-真题讲解 Valid palindrome .mp4
 46.68M ├──

08 第八章【互动】线性数据结构-链表(Python 语言) | ├──

08 python-quiz .mp4
 25.79M | ├──

08 python-本节重点及上节回顾 .mp4
 14.15M | ├──

08 python-链表的遍历 .mp4
 11.04M | ├──

08 python-链表的概念 .mp4
 16.53M | ├──

08 python-链表的基本操作(二) .mp4
 30.72M | ├──

08 python-链表的基本操作(一) .mp4
 31.79M | └──

08 python-算法的时间复杂度 .mp4
 20.08M ├──

09 第九章【互动】链表及其操作,算法的时间复杂度(Java 语言) | ├──

09 Java-链表的操作-遍历 .mp4
 43.36M | ├──

09 Java-链表的操作-插入 .mp4
 32.02M | ├──

09 Java-链表的操作-删除、查找、修改 .mp4
 32.40M | ├──

09 Java-神奇的dummy节点 .mp4
 23.46M | ├──

09 Java-什么是链表? .mp4
 21.20M | └──

09 Java-算法的时间复杂度 .mp4
 22.53M ├──

10 第十章【直播】字符串 String | ├──

10 字符串 String-1 .mp4
 226.39M | └──

10 字符串 String-2 .mp4
 156.85M ├──

11 第十一章【直播】链表 LinkedList | └──

11 链表 LinkedList .mp4
 233.81M ├──

13 第十三章【互动】手把手带写代码——字符串(Java 语言) | ├──13 01 【基础班】1781-JAVA .mp4
 15.16M | ├──13 02 【基础班】1784-JAVA .mp4
 12.67M | ├──13 03 【基础班】958-JAVA .mp4
 14.87M | └──13 04 【基础班】1819-JAVA .mp4
 14.76M ├──

14 第十四章【互动】手把手带写代码——链表(Python 语言) | ├──14 01 【基础班】219-python .mp4
 12.29M | ├──14 02 【基础班】452-python .mp4
 9.11M | ├──14 03 【基础班】228-python .mp4
 5.69M | └──14 04 【基础班】170-python .mp4
 21.50M ├──

15 第十五章【互动】手把手带写代码——链表(Java 语言) | ├──15 01 【基础班】219-java .mp4
 14.96M | ├──15 02 【基础班】452-java .mp4
 11.39M | ├──15 03 【基础班】228-java .mp4
 6.58M | └──15 04 【基础班】170-java .mp4
 23.16M ├──

16 第十六章【互动】栈和队列(Python 语言) | ├──16 01 

16 python-栈 .mp4
 17.03M | ├──16 02 

16 python-栈的练习题 .mp4
 18.82M | ├──16 03 

16 python-栈在操作系统中的应用 .mp4
 44.08M | ├──16 04 

16 python-队列 .mp4
 25.77M | └──16 05 

16 python-队列的实际应用及总结 .mp4
 7.29M ├──

17 第十七章【互动】栈和队列(Java 语言) | ├──17 

01 Java-栈及其实现 .mp4
 24.57M | ├──17 

02 Java-函数调用栈 .mp4
 19.17M | └──17 

03 Java-队列及其实现 .mp4
 30.71M ├──

18 第十八章【互动】二叉树的遍历方式(Python 语言) | ├──18 01 python-本节重点和上节回顾2 .mp4
 7.13M | ├──18 

02 python-什么是树?二叉树的定义 .mp4
 19.63M | ├──18 

03 python-如何创建一棵二叉树 .mp4
 19.76M | ├──18 

04 python-如何做深度优先遍历 .mp4
 18.26M | ├──18 

05 python-函数自己调用自己会发生什么? .mp4
 13.43M | ├──18 

06 python-为什么前面的代码会报错? .mp4
 8.69M | ├──18 

07 python-修改报错的代码 .mp4
 21.67M | ├──18 

08 python-二叉树的遍历方式 .mp4
 20.01M | ├──18 

09 python-什么是递归 .mp4
 11.92M | ├──18 

10 python-递归三要素 .mp4
 16.52M | ├──18 

11 python-递归的时间复杂度 .mp4
 30.90M | ├──18 

12 python-练习题二 .mp4
 16.40M | ├──18 

13 python-练习题三 .mp4
 23.04M | └──18 

14 python-总结 .mp4
 1.84M ├──

19 第十九章【互动】二叉树的遍历方式(Java 语言) | ├──19 

01 Java-什么是二叉树 .mp4
 28.27M | ├──19 

02 Java-二叉树的递归遍历 .mp4
 41.19M | ├──19 

03 Java-先序、中序和后序遍历 .mp4
 37.82M | ├──19 

04 Java-递归的定义和三要素 .mp4
 36.50M | ├──19 

05 Java-递归的复杂度分析 .mp4
 23.61M | ├──19 

06 Java-Binary tree leaf sum .mp4
 13.42M | └──19 

07 Java-Maximum depth of binary tree .mp4
 22.69M ├──

20 第二十章【直播】栈和队列 Stack & Queue | └──

20 栈和队列 Stack & Queue .mp4
 273.28M ├──

21 第二十一章【直播】二叉树、二叉树的宽度与深度优先遍历,递归 | └──

21 二叉树、二叉树的宽度与深度优先遍历,递归 .mp4
 267.85M ├──

22 第二十二章【互动】手把手带写代码——栈和队列(Python 语言) | ├──22 01 【基础班】492-python .mp4
 18.99M | ├──22 02 【基础班】541-python .mp4
 18.10M | ├──22 03 【基础班】421-python .mp4
 20.62M | └──22 04 【基础班】575-python .mp4
 23.01M ├──

23 第二十三章【互动】手把手带写代码——栈和队列(Java 语言) | ├──

12 第十二章【互动】手把手带写代码——字符串(Python 语言) | | ├──12 01 【基础班】1781-PYTHON .mp4
 8.88M | | ├──12 02 【基础班】1784-PYTHON .mp4
 11.62M | | ├──12 03 【基础班】958-PYTHON .mp4
 19.71M | | └──12 04 【基础班】1819-PYTHON .mp4
 14.36M | ├──23 01 【基础班】492-java .mp4
 18.77M | ├──23 02 【基础班】541-java .mp4
 19.60M | └──23 04 【基础班】575-java .mp4
 39.40M ├──

24 第二十四章【互动】手把手带写代码——二叉树(Python 语言) | ├──24 01 【基础班】71-python .mp4
 30.01M | ├──24 02 【基础班】650-python .mp4
 25.51M | ├──24 03 【基础班】1807-python(递归+递推) .mp4
 22.74M | └──24 04 【基础班】1807-python(记忆化搜索) .mp4
 12.77M ├──

25 第二十五章【互动】手把手带写代码——二叉树(Java 语言) | ├──25 01 【基础班】71-java .mp4
 26.59M | ├──25 02 【基础班】650-java .mp4
 25.77M | ├──25 03 【基础班】1807-java(递归+递推) .mp4
 19.49M | └──25 04 【基础班】1807-java(记忆化搜索) .mp4
 14.15M ├──

26 第二十六章【互动】二叉搜索树(Python 语言) | ├──26 

01 python-本节重点和上节回顾 .mp4
 12.24M | ├──26 

02 python-宽度优先遍历的实现过程 .mp4
 35.84M | ├──26 

03 python-分层遍历 .mp4
 43.63M | ├──26 

04 python-练习一 .mp4
 16.20M | ├──26 

05 python-练习二 .mp4
 25.52M | ├──26 

06 python-什么是BST .mp4
 7.88M | ├──26 

07 python-BST的基本操作之插入 .mp4
 36.87M | ├──26 

08 python-BST的基本操作之查找 .mp4
 13.22M | ├──26 

09 python-BST的时间复杂度和空间复杂度 .mp4
 7.62M | ├──26 

10 python-平衡BST的应用 .mp4
 2.39M | ├──26 

11 python-练习三和四 .mp4
 47.35M | └──26 12 26python-总结 .mp4
 1.82M ├──

27 第二十七章【互动】二叉搜索树(Java 语言) | ├──27 

01 Java-普通遍历 .mp4
 41.16M | ├──27 

02 Java-分层遍历 .mp4
 23.78M | ├──27 

03 Java-二叉树宽度优先遍历的复杂度分析 .mp4
 23.72M | ├──27 

04 Java-Binary Tree Level Order Traversal .mp4
 15.42M | ├──27 

05 Java-Convert Binary Tree to Linked Lists by Depth .mp4
 21.40M | ├──27 

06 Java-Identical binary tree .mp4
 26.88M | ├──27 

07 Java-Validate balanced binary tree .mp4
 22.45M | └──27 

08 Java-Validate Binary Search Tree .mp4
 26.76M ├──

28 第二十八章【互动】集合与字典 set & dictionary(Python 语言) | ├──28 01 31python-本节重点和上节回顾 .mp4
 6.20M | ├──28 02 31python-set的简介 .mp4
 7.75M | ├──28 03 31python-set的常见操作 .mp4
 21.18M | ├──28 04 31python-set集合间的操作 .mp4
 17.19M | ├──28 05 31python-练习一 .mp4
 12.76M | ├──28 06 31python-字典的基本操作 .mp4
 58.41M | ├──28 07 31python-练习二 .mp4
 13.56M | ├──28 08 31python-集合和字典的实现 .mp4
 18.06M | ├──28 09 31python-hash table VS BST .mp4
 6.79M | ├──28 10 31python-哈希表设计要素之哈希函数 .mp4
 23.79M | ├──28 11 31python-哈希表设计要素之哈希冲突 .mp4
 14.35M | ├──28 12 31python-哈希表设计要素之重哈希 .mp4
 5.30M | ├──28 13 31python-分治法练习三 .mp4
 26.86M | ├──28 14 31python-分治法练习四 .mp4
 34.69M | ├──28 15 31python-分治法练习五 .mp4
 13.43M | └──28 16 31python-总结 .mp4
 2.54M ├──

29 第二十九章【互动】哈希表 Set & Map(Java 语言) | ├──29 01 32Java-集合和索引 .mp4
 32.91M | ├──29 02 32Java-哈希表及其实现 .mp4
 21.74M | ├──29 03 32Java-哈希表和冲突解决-重哈希 .mp4
 19.48M | ├──29 04 32Java-哈希表的冲突解决-开散列 .mp4
 32.81M | └──29 05 32Java-哈希表的冲突解决-闭散列 .mp4
 21.61M ├──

30 第三十章【直播】利用分治法解决树的问题,二叉搜索树 | └──利用分治法解决树的问题,二叉搜索树 .mov 1.17G ├──

31 第三十一章【互动】哈希 Hash | ├──31-1 哈希表基础 .mp4
 100.63M | ├──31-2 哈希函数 .mp4
 59.94M | ├──31-3 Java中的hashCode方法 .mp4
 132.62M | ├──31-4 链地址法 Seperate Chaining .mp4
 29.23M | ├──31-5 实现属于我们自己的哈希表 .mp4
 111.39M | ├──31-6 哈希表的动态空间处理与复杂度分析 .mp4
 135.77M | ├──31-7 哈希表更复杂的动态空间处理方法 .mp4
 122.33M | └──31-8 更多哈希冲突的处理方法 .mp4
 21.56M ├──

32 第三十二章【互动】手把手带写代码——分治法(Python 语言) | ├──二叉树中的最大路径和 .mov 2.52G | ├──修剪二叉搜索树 .mov 2.86G | ├──在二叉搜索树中查找 .mov 2.38G | └──子树 .mov 3.94G ├──

33 第三十三章【互动】手把手带写代码——分治法(Java 语言) | ├──二叉搜索树中查找 .mov 2.38G | └──修剪二叉搜索树 .mov 3.92G ├──

34 第三十四章【互动】手把手带写代码——哈希表(Python 语言) | ├──查找子数组 .mov 2.21G | ├──差为k的数对数量 .mov 1.35G | ├──句子相似性 .mov 4.84G | └──森林中的兔子 .mov 4.35G ├──

35 第三十五章【互动】手把手带写代码——哈希表(Java 语言) | ├──查找子数组 .mov 1.67G | ├──差为k的数对数量 .mov 1.67G | ├──句子相似性 .mov 2.28G | └──森林中的兔子 .mov 2.73G ├──

36 第三十六章【互动】排序算法 Quick Sort & Merge Sort(Python 语言) | ├──36.1普通排序算法 .mov 2.33G | ├──36.2归并排序1 .mov 9.56G | ├──36.3归并排序2 .mov 3.67G | ├──36.4分治法的代码思考方式 .mov 1.71G | ├──36.5归并排序的复杂度 .mov 5.77G | ├──36.6快速排序 .mov 6.10G | ├──36.7快排的细节问题 .mov 7.32G | ├──36.8快排的复杂度 .mov 2.78G | └──36.9总结 .mov 2.83G ├──

37 第三十七章【互动】高级排序算法(Java 语言) | ├──37-1 冒泡排序的基本思想(泉州大白网络科技) .mp4
 51.04M | ├──37-2实现冒泡排序法(泉州大白网络科技) .mp4
 64.01M | ├──37-3冒泡排序的优化(泉州大白网络科技) .mp4
 105.81M | ├──37-4冒泡排序还能优化(泉州大白网络科技) .mp4
 116.47M | ├──37-5换个方式实现冒泡排序(泉州大白网络科技) .mp4
 10.90M | └──37-6冒泡排序的特点(泉州大白网络科技) .mp4
 12.35M ├──

38 第三十八章【互动】排序队列 | ├──38-1基于堆的优先队列(泉州大白网络科技) .mp4
 43.05M | ├──38-2Top K 问题(泉州大白网络科技) .mp4
 81.66M | ├──38-3作业:使用优先队列解决 Select K 问题(泉州大白网络科技) .mp4
 15.31M | ├──38-4使用 Java 中的 PriorityQueue(泉州大白网络科技) .mp4
 85.28M | ├──38-5使用快排思想和优先队列解决 Top K 问题的比较 .mp4
 45.60M | └──38-6和堆相关的更多话题和广义队列(泉州大白网络科技) .mp4
 75.23M ├──

39 第三十九章【互动】手把手带写代码——排序(Python 语言) | ├──逆序对 .mov 1.64G | ├──颜色分类 .mov 558.14M | ├──整数排序merge sort .mov 1.22G | └──整数排序快排 .mov 1.50G ├──

40 第四十章【互动】手把手带写代码——排序(Java 语言) | ├──逆序对 .mov 1.78G | ├──颜色分类 .mov 825.56M | ├──整数排序归并 .mov 2.07G | └──整数排序快排 .mov 1.65G ├──

00 必读.txt 0.17kb └──Java-选择排序 .mp4
 20.51M