- 数据结构与算法
- DSA - 首页
- DSA - 概述
- DSA - 环境搭建
- DSA - 算法基础
- DSA - 渐进分析
- 数据结构
- DSA - 数据结构基础
- DSA - 数据结构和类型
- DSA - 数组数据结构
- 链表
- DSA - 链表数据结构
- DSA - 双向链表数据结构
- DSA - 循环链表数据结构
- 栈与队列
- DSA - 栈数据结构
- DSA - 表达式解析
- DSA - 队列数据结构
- 查找算法
- DSA - 查找算法
- DSA - 线性查找算法
- DSA - 二分查找算法
- DSA - 插值查找
- DSA - 跳跃查找算法
- DSA - 指数查找
- DSA - 斐波那契查找
- DSA - 子列表查找
- DSA - 哈希表
- 排序算法
- DSA - 排序算法
- DSA - 冒泡排序算法
- DSA - 插入排序算法
- DSA - 选择排序算法
- DSA - 归并排序算法
- DSA - 希尔排序算法
- DSA - 堆排序
- DSA - 桶排序算法
- DSA - 计数排序算法
- DSA - 基数排序算法
- DSA - 快速排序算法
- 图数据结构
- DSA - 图数据结构
- DSA - 深度优先遍历
- DSA - 广度优先遍历
- DSA - 生成树
- 树数据结构
- DSA - 树数据结构
- DSA - 树的遍历
- DSA - 二叉搜索树
- DSA - AVL树
- DSA - 红黑树
- DSA - B树
- DSA - B+树
- DSA - 伸展树
- DSA - Trie树
- DSA - 堆数据结构
- 递归
- DSA - 递归算法
- DSA - 使用递归实现汉诺塔
- DSA - 使用递归实现斐波那契数列
- 分治法
- DSA - 分治法
- DSA - 最大最小问题
- DSA - Strassen矩阵乘法
- DSA - Karatsuba算法
- 贪心算法
- DSA - 贪心算法
- DSA - 旅行商问题(贪心法)
- DSA - Prim最小生成树
- DSA - Kruskal最小生成树
- DSA - Dijkstra最短路径算法
- DSA - 地图着色算法
- DSA - 分数背包问题
- DSA - 带截止期限的作业排序
- DSA - 最优合并模式算法
- 动态规划
- DSA - 动态规划
- DSA - 矩阵链乘法
- DSA - Floyd-Warshall算法
- DSA - 0-1背包问题
- DSA - 最长公共子序列算法
- DSA - 旅行商问题(动态规划法)
- 近似算法
- DSA - 近似算法
- DSA - 顶点覆盖算法
- DSA - 集合覆盖问题
- DSA - 旅行商问题(近似法)
- 随机化算法
- DSA - 随机化算法
- DSA - 随机化快速排序算法
- DSA - Karger最小割算法
- DSA - Fisher-Yates洗牌算法
- DSA有用资源
- DSA - 问答
- DSA - 快速指南
- DSA - 有用资源
- DSA - 讨论
数据结构与算法 - 环境搭建
在线编辑器和编译器
我们为您设置了一个在线环境,您可以使用四种不同的编程语言(C、C++、Java、Python)编译和运行您的数据结构和算法程序。
#include <stdio.h> int main(){ int LA[3] = {}, i; for(i = 0; i < 3; i++) { LA[i] = i + 2; printf("LA[%d] = %d \n", i, LA[i]); } return 0; }
#include <iostream> using namespace std; int main(){ int LA[3] = {}, i; cout << "Array:" << endl; for(i = 0; i < 5; i++) { LA[i] = i + 2; cout << "LA[" << i <<"] = " << LA[i] << endl; } return 0; }
public class ArrayDemo { public static void main(String []args) { int LA[] = new int[3]; System.out.println("Array:"); for(int i = 0; i < 3; i++) { LA[i] = i+3; System.out.println("LA[" + i + "] = " + LA[i]); } } }
LA = [0, 0, 0] x = 0 print("Array: ") for x in range(len(LA)): LA[x] = x+1; print("LA", [x], " = " , LA[x])
本地环境搭建
如果您仍然希望为C编程语言设置自己的环境,则需要在您的计算机上安装以下两个工具:(a) 文本编辑器和 (b) C编译器。
文本编辑器
这将用于键入您的程序。一些编辑器的示例包括Windows记事本、OS Edit命令、Brief、Epsilon、EMACS和vim或vi。
文本编辑器的名称和版本在不同的操作系统上可能有所不同。例如,Windows上将使用记事本,而vim或vi可以在Windows、Linux或UNIX上使用。
您使用编辑器创建的文件称为源文件,其中包含程序源代码。C程序的源文件通常以“.c”扩展名命名。
在开始编程之前,请确保您已准备好一个文本编辑器,并且您有足够的经验来编写计算机程序,将其保存在文件中,编译它,最后执行它。
C编译器
源文件中编写的源代码是您的程序的人类可读源代码。需要对其进行“编译”,才能转换为机器语言,以便您的CPU能够根据给定的指令实际执行程序。
此C编程语言编译器将用于将您的源代码编译成最终的可执行程序。我们假设您具备关于编程语言编译器的基本知识。
最常用且免费提供的编译器是GNU C/C++编译器。或者,如果您拥有相应的操作系统(OS),则可以使用HP或Solaris的编译器。
以下部分指导您如何在各种操作系统上安装GNU C/C++编译器。我们同时提到C/C++,因为GNU GCC编译器适用于C和C++编程语言。
在UNIX/Linux上安装
如果您使用的是Linux或UNIX,请通过从命令行输入以下命令来检查GCC是否已安装在您的系统上:
$ gcc -v
如果您的计算机上安装了GNU编译器,则它应该打印类似以下的消息:
Using built-in specs. Target: i386-redhat-linux Configured with: ../configure --prefix = /usr ....... Thread model: posix gcc version 4.1.2 20080704 (Red Hat 4.1.2-46)
如果未安装GCC,则您需要使用https://gcc.gnu.org/install/中提供的详细说明自行安装。
本教程是基于Linux编写的,所有给出的示例都在Cent OS版本的Linux系统上编译。
在Mac OS上安装
如果您使用的是Mac OS X,获取GCC最简单的方法是从Apple的网站下载Xcode开发环境,并按照简单的安装说明进行操作。设置好Xcode后,您就可以使用GNU C/C++编译器了。
Xcode目前可在developer.apple.com/technologies/tools/获取。
在Windows上安装
要在Windows上安装GCC,您需要安装MinGW。要安装MinGW,请访问MinGW主页www.mingw.org,并点击链接到MinGW下载页面。下载最新版本的MinGW安装程序,其名称应为MinGW-<version>.exe。
安装MinWG时,至少必须安装gcc-core、gcc-g++、binutils和MinGW运行时,但您可能希望安装更多。
将MinGW安装的bin子目录添加到您的PATH环境变量中,以便您可以通过简单的名称在命令行中指定这些工具。
安装完成后,您将能够从Windows命令行运行gcc、g++、ar、ranlib、dlltool和几个其他GNU工具。