不插电的计算机科学
  • Introduction
  • 前言
  • 特别鸣谢
  • 第一部分 - 数据:最原始的材料
    • 活动1 - 计算“点”-二进制数
      • 素材:二进制数
      • 二进制数
      • 活动学习单1: 二进制数
      • 活动学习单2: 使用二进制表示数字
      • 活动学习单3: 传送秘密信息
      • 活动学习单4: 电子邮件与数据机
      • 活动学习单5: 数到31以上
      • 活动学习单6: 更多关于二进制数的知识
      • 这个活动在说什么?
      • 答案和提示
    • 活动2 - 用数字表示颜色 — 图像展示
      • 用数字表示颜色1
      • 用数字表示颜色2
      • 活动学习单1: 儿童传真
      • 活动学习单2.1: 做出自己的图片
      • 活动学习单2.2: 做出自己的图片
      • 这个活动在说什么?
      • 答案和提示
    • 活动3 - “你说什么?” - 文字压缩
      • “你说什么?”
      • 活动学习单1:“你说什么?”
      • 这个活动在说什么?
    • 活动4 - 翻转卡片魔术 - 错误的检测和修正
      • 魔术般的技巧
      • 一个现实的范例:书码与条码
      • 这个活动在说什么?
    • 活动5 - 二十个问题 - 信息理论
      • 二十个问题
      • 活动:二十个问题
      • 活动学习单1: 决策树
      • 这个活动在说什么?
      • 答案和提示
  • 第二部分 - 让计算机运行:算法
    • 活动6 - 海战棋:搜索算法
      • 海战棋活动 — 暖身
      • 线性搜索游戏
      • 二元搜索游戏
      • 哈希法搜索
      • 延伸活动
      • 这个活动在说什么?
    • 活动7 — 从最重到最轻:排序算法
      • 最重与最轻
      • 学习活动单:重量的排序
      • 学习活动单:分治法(Divide and Conquer)
      • 这个活动在说什么?
      • 答案和提示
    • 活动8 — 与时间赛跑:排序网络
      • 排序网络
      • 这个活动在说什么?
Powered by GitBook
On this page

第二部分 - 让计算机运行:算法

让计算机运行计算

计算机是根据设定好的一连串指令来运行的。这些指令让计算机能够完成例如排序、搜索及发送信息的工作。为了更高效的完成这些事,比如在大量的资料中找到想要的东西,或是在网络上发送信息,都需要运用一些好的方法才能把事情做好。

算法就是用来完成这些任务的一组指令,算法也是计算机科学的核心,它让我们能够了解计算机是怎样工作的。算法可以帮助我们解答很多以前需要花费很长时间才能解决的问题 —— 例如,求出圆周率小数点后一百万位、找到全球互联网上所有包含你名字的网页、求出将包裹装入一个容器中的最佳方式,或是判断一个很大的数(100位)是否为质数。英文中“Algorithm”(算法)来至于波斯数学家穆罕默德•伊本•穆萨•花拉子米(Mohammed ibn Musa Al-Khowarizmi),也就是摩西的儿子,来自花剌子模。他在公元800年左右加入了巴格达一个称作智慧之屋(House of Wisdom)的学术中心。他的作品将印度的算术传播到阿拉伯地带,再从阿拉伯到欧洲。当它在公元 1120 年被翻译为拉丁文时,第一个字是“Disit Algorismi” - 因此称作”Algorismi”。

Previous答案和提示Next活动6 - 海战棋:搜索算法

Last updated 7 years ago