中国易修网>维修资讯>

c语言经典代码100

c语言经典代码100

浏览次数:1871次    时间:2023-06-07
  • 资讯详情
  • C语言经典代码100是一本经典的C语言编程书籍,该书汇集了一百个经典的C语言代码,涵盖了各种编程领域,包括数据结构、算法、图形学、游戏开发等等。

    以下是本人挑选出的几个经典代码:

    1. 快速排序算法

    快速排序是常见的排序算法,它的时间复杂度为O(nlogn)。它的代码如下:

    ```

    void quick_sort(int arr[], int left, int right) {

    int i, j, pivot;

    if(left < right) {

    i = left;

    j = right + 1;

    pivot = arr[left];

    do {

    do i++; while(arr[i] < pivot);

    do j--; while(arr[j] > pivot);

    if(i < j) swap(arr[i], arr[j]);

    } while(i < j);

    swap(arr[left], arr[j]);

    quick_sort(arr, left, j - 1);

    quick_sort(arr, j + 1, right);

    }

    }

    ```

    2. Dijkstra算法

    Dijkstra算法是一种求解最短路径的算法,它的时间复杂度为O(n^2)。它的代码如下:

    ```

    void Dijkstra(int n, int start, int* dist, int* prev, int** matrix) {

    bool* visited = new bool[n];

    for(int i = 0; i < n; i++) {

    dist[i] = matrix[start][i];

    visited[i] = false;

    if(dist[i] == INF) prev[i] = -1;

    else prev[i] = start;

    }

    dist[start] = 0;

    visited[start] = true;

    for(int i = 1; i < n; i++) {

    int min = INF;

    int u = start;

    for(int j = 0; j < n; j++) {

    if(!visited[j] && dist[j] < min) {

    min = dist[j];

    u = j;

    }

    }

    visited[u] = true;

    for(int j = 0; j < n; j++) {

    if(!visited[j] && matrix[u][j] < INF) {

    int newdist = dist[u] + matrix[u][j];

    if(newdist < dist[j]) {

    dist[j] = newdist;

    https://www.easiu.com/common/images/10282.jpg

    prev[j] = u;

    }

    }

    }

    }

    delete[] visited;

    }

    ```

    3. Bresenham算法

    Bresenham算法是一种绘制直线的算法,它的时间复杂度非常低,只需要进行加减法和位运算,因此非常适合在嵌入式系统和计算机游戏中使用。它的代码如下:

    ```

    void Bresenham(int x1, int y1, int x2, int y2) {

    int dx = abs(x2 - x1);

    int dy = abs(y2 - y1);

    int sx = (x1 < x2) ? 1 : -1;

    int sy = (y1 < y2) ? 1 : -1;

    int err = dx - dy;

    while(x1 != x2 || y1 != y2) {

    https://www.easiu.com/common/images/10108.jpg

    set_pixel(x1, y1);

    int e2 = 2 * err;

    if(e2 > -dy) {

    err -= dy;

    x1 += sx;

    }

    if(e2 < dx) {

    err += dx;

    y1 += sy;

    }

    }

    }

    ```

    以上是我挑选出的三个经典代码,它们分别代表了排序算法、图论算法和图形学算法的经典之作。在学习C语言编程时,我们可以通过学习这些经典代码来提高自己的编程能力和编程思维。

  • 热门资讯
  • 售后维修电话查询
  • 简谱上各种符号的含义

    简谱上各种符号的含义

    和的数学符号怎么写

    和的数学符号怎么写

    数学中的属于符号在电脑上怎么打的

    数学中的属于符号在电脑上怎么打的

    写原电池符号时氢离子写哪

    写原电池符号时氢离子写哪

    元素周期表51号啥意思?

    元素周期表51号啥意思?

    钢筋平法图集常用符号

    钢筋平法图集常用符号

    手机输入法图标

    手机输入法图标

    熔断器式隔离开关的符号

    熔断器式隔离开关的符号

    五星特殊符号复制

    五星特殊符号复制

    autocad三角形标注

    autocad三角形标注

  • 其它资讯相关文章
  • 50个常用元器件图解大全

    50个常用元器件图解大全

    重点符号怎么标

    重点符号怎么标

    钢筋符号有个F

    钢筋符号有个F

    伊普西隆数学符号怎么打

    伊普西隆数学符号怎么打

    48个音标的手写体格式

    48个音标的手写体格式

    2021彩色符号

    2021彩色符号

    水杯emjoy

    水杯emjoy

    元素符号记忆口诀前20

    元素符号记忆口诀前20

    病句常用的修改符号

    病句常用的修改符号

    一键生成王者荣耀重复名字的软件有哪些

    一键生成王者荣耀重复名字的软件有哪些

  • 其它资讯相关问题
  • 欧姆定律的单位怎么记住    未回答
  • 说话标点符号的题目    未回答
  • 沙尘暴的天气符号是什么样的    未回答
  • inf数学符号怎么读    未回答
  • cf手游游戏名字特殊符号大全    未回答
  • 时间继电器上面的符号表示什么    未回答
  • 电流单位字母代号表示什么    未回答
  • 小于或等于符号    未回答
  • 王者透明的符号    未回答
  • 爱的魔力转圈圈gif表情包猩猩    未回答
  • 被子的洗涤方法图解    未回答
  • 隔音符号的词语有哪些    未回答
  • 在中间的小点怎么打手机    未回答
  • 输入法图案大全下载    未回答
  • 数字特殊符号怎么打出来快捷键    未回答
  • 七个音符在五线谱上的位置怎么写    未回答
  • 搜狗输入法独角兽表情    未回答
  • 所有的数学符号是什么意思啊    未回答
  • 硼的化学表达式怎么写?    未回答
  • 文字 特殊符号    未回答
  • 其它资讯相关维信息修
  • 工程图纸符号大全图解
  • 网易云音乐logo符号复制不出来怎么回事
  • 王者荣耀名字瑶的特殊字体
  • 有三个字母的元素吗
  • 中间的点符号复制怎么用
  • 索引符号与详图符号在制图规范上的区别有哪些?
  • 彩虹独角兽动画片
  • 数学中标准差是什么意思?
  • 什么像标点符号的句子
  • pb元素怎么读
  • 人民币中的符号在电脑中怎么输入
  • 2升等于多少毫升
  • 酒瓶的特殊符号
  • 乘在excel中的函数
  • 数学符号ξ怎么写
  • 电压互感器和电流互感器图形符号
  • 水电施工图纸识图方法
  • 一个爱心上面三个点点的符号
  • 各种动物图片名称
  • 两个爱心一大一小符号
  • 26个带圈字母符号怎么打出来手机
  • 钢筋粗细型号怎么表示
  • 相关资讯
  • nb是什么元素怎么读
  • china花体字名字
  • 管道2分是多大
  • 电阻器的符号表示
  • 花程式g后括号内
  • 常用电气开关及符号
  • 手机输入法怎么打阿尔法
  • 小米logo如何打出来
  • 平均值表示符号怎么打出来的
  • 特殊符号微信名男
  • 免责声明: 维修资讯栏目部分文章来自互联网(全部或部分摘录),如果版权所有人不同意我们转载,请通过书面告知,我们将在第一时间删除。文章内容不代表中国易修网观点,仅供参考,请谨慎使用。中国易修网对您使用的后果概不负责。您可以转载或引用本站的资讯栏目内容,请注名文章出处,但不得用以任何商业用途。