计算机科学导论(中/英)

搭建搜索引擎和社交网络

初级

大约 3 个月

6小时每周 (自主学习)

加入成千上万的全球学员

开始免费课程

加入课程
免费
可享受
课程视频
实战练习与参考项目指导
初级

大约 3 个月

6小时每周 (自主学习)

加入成千上万的全球学员
观看计算机科学导论(中/英)课程介绍
观看视频

课程概述

在这门计算机编程入门课程中,你将通过搭建自己的常用 Web 应用,掌握并练习主要的计算机科学概念。你将会学习功能强大却又非常易学、应用十分广泛的 Python,在搭建自己的搜索引擎和社交网络的过程中探索计算机科学基础知识。此课程提供中文版本。

对编程感兴趣?加入“编程入门”纳米学位,开始你的编程之旅。

为什么学习这门课程?

你将学习 Python 编程语言,并探索计算机科学中的基本概念。最重要的是,你将会使用计算机编程来解决有趣的问题(如何构建网络爬虫或社交网络),学会开始像软件工程师一样思考。

本课是迈入计算机科学的第一步,不论你想成为软件工程师还是要与软件工程师协作,本课程都非常适合于你。掌握本课中的概念以后,你将为学习中级计算机科学课程打下良好基础。

构建搜索引擎

在本课中,你将了解主要的搜索引擎组件,包括爬虫、索引和页面等级算法,最终搭建一个搜索引擎。随着你搭建这些部分,你将学会并练习计算机科学技能,为你进入中级计算机科学课程打好基础。

搭建社交网络

在课程结尾处我们给你一些关系(诸如“Dave 喜欢 Andy、Kathleen 和 Kristy”之类的术语串),你将使用你新学会的计算机科学技能将这些关系组织成社交网络。通过你的新社交网络,你可以探索关系,理解现实生活中你在你的社交网络中的位置。

先修要求

本课程不需要任何计算机编程先修知识,欢迎初学者!

查看使用优达学城的技术要求

你将学习什么内容?

项目

最终项目

学习计划

第 1 课:如何开始

  • Sergey Brin 访谈
  • 了解 Python
  • 处理器
  • Grace Hopper
  • 变量
  • 字符串和数字
  • 索引字符串
  • 字符串理论

第 2 课:如何重复

  • 流程简介
  • 用返回语句实现累加
  • 等式比较
  • If 语句
  • Or 函数
  • 最大流程
  • While 循环
  • 打印数字

第 2.5 课:如何解决问题

  • 什么是输入
  • 算法伪代码
  • 优化

第 3 课:如何管理数据

  • 嵌套列表
  • 字符串列表
  • 别名
  • 列表运算
  • 列表加法和长度
  • 计算机如何存储数据
  • For 循环
  • 弹出元素
  • 网络爬虫

第 4 课:响应查询

  • 数据结构
  • 查找
  • 建立网络索引
  • 延迟
  • 宽带
  • 比特桶
  • 协议

第 5 课:程序如何运行

  • 测量速度
  • Spin 循环
  • 索引大小和时间
  • 加快查找速度
  • 哈希函数
  • 测试哈希函数
  • 实现哈希表
  • 字典
  • 修改搜索引擎

第 6 课:如何具有无限能力

  • 无限能力
  • 计数器
  • 递归定义
  • 递归过程
  • 回文
  • 递归与迭代
  • 分割与被征服
  • 网页等级

第 7 课:计算的过去、现在和将来

  • 计算的过去
  • 计算机历史博物馆
  • 最早的硬盘
  • 计算机出现之前的搜索
  • 计算的现在
  • Slac 和大数据
  • 开源
  • 计算的未来
  • 文本分析
  • 高能效计算
  • 计算机安全
  • 量子计算

讲师与合作伙伴

Dave Evans

Dave Evans

David Evans 是弗吉尼亚大学计算机科学教授,他讲授计算机科学并领导计算机安全研究。他是《计算机科学导论》一书的作者,曾荣获弗吉尼亚的大学教师最高奖。他拥有麻省理工学院的博士、硕士和学士学位。

官方微信公众号二维码

优达学城(Udacity)微信