中国易修网>维修资讯>

c语言经典代码100

c语言经典代码100

浏览次数:1442次    时间:2023-07-21
  • 资讯详情
  • 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://easiu.com/common/images/14430568789032979.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://easiu.com/common/images/otms541wZO_4.jpg

    set_pixel(x1, y1);

    int e2 = 2 * err;

    if(e2 > -dy) {

    err -= dy;

    x1 += sx;

    }

    if(e2 < dx) {

    err += dx;

    y1 += sy;

    }

    }

    }

    ```

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

  • 热门资讯
  • 售后维修电话查询
  • 海信电视老自动关机

    海信电视老自动关机

    电磁炉受潮不加热

    电磁炉受潮不加热

    松下 电视 红灯闪

    松下 电视 红灯闪

    海信冰箱换氟利昂费用

    海信冰箱换氟利昂费用

    格力空调显示屏坏了

    格力空调显示屏坏了

    三星投资公司郑州分公司

    三星投资公司郑州分公司

    彩电开关电源短路维修

    彩电开关电源短路维修

    美菱冰箱冷藏室不制冷的原因

    美菱冰箱冷藏室不制冷的原因

    美的空调跳闸后不制冷

    美的空调跳闸后不制冷

    华为上海嘉定维修点

    华为上海嘉定维修点

  • 其它资讯相关文章
  • 主板芯片 结构

    主板芯片 结构

    武汉迎燕空调售后

    武汉迎燕空调售后

    海信led32a300参数

    海信led32a300参数

    家用空调送风温度

    家用空调送风温度

    电视盒 电路图

    电视盒 电路图

    松下电视亮度多少合适

    松下电视亮度多少合适

    九阳触屏电磁炉无显示

    九阳触屏电磁炉无显示

    空调安装后怎样放氟

    空调安装后怎样放氟

    美的洗衣机使用图解

    美的洗衣机使用图解

    电磁炉烧不开水的原因

    电磁炉烧不开水的原因

  • 其它资讯相关问题
  • 格力变频空调外壳漏电    未回答
  • 空调用着用着不通电了    未回答
  • 奥克斯空调室外机噪音大    未回答
  • 挂机空调工作原理    未回答
  • 长虹电视网上售后服务    未回答
  • 空调漏水维修案例    未回答
  • 中国家电维修联盟论    未回答
  • 长虹彩电色彩失真    未回答
  • 海尔le32a390p电源板    未回答
  • 长沙三星洗衣机维修    未回答
  • 约克中央空调主板维修    未回答
  • 康佳led电源故障通病    未回答
  • 空调高低压管同时结霜    未回答
  • 洗衣机甩干桶转速慢维修图    未回答
  • 格力空调变频e6解决    未回答
  • 海信智能电视售后    未回答
  • 福州美的电饭煲维修点    未回答
  • 康佳lc42fs81dc图纸    未回答
  • 手搓式洗衣机原理    未回答
  • 液晶电视最佳设置    未回答
  • 其它资讯相关维信息修
  • 洗衣机 外壳锈
  • 为什么有些电磁炉便宜
  • 电磁炉风扇好使 不加热咋回事呢
  • 海信tf2511hg型彩电限时锁定检修
  • 全自动洗衣机脱水停不下来
  • lm339充电电路
  • 电磁炉主电路板怎样在电源
  • 长虹空调传感器阻值
  • 智能电饭煲故障维修
  • 2013家电维修收费标准
  • 格力空调外机清洗图解
  • 海尔洗衣机xqg50 1
  • 宁波格力空调图片
  • 单体空调的年度保养内容
  • lg电视黑屏 复位
  • 夏天用制冷和除湿哪样更舒适
  • 皇明太阳能仪表黑屏
  • 海尔l32k1a网络功能在哪里
  • 电磁炉小板电源电路图
  • 福州华硕笔记本售后
  • 家电维修售后服务加盟
  • bose北京维修点
  • 相关资讯
  • 电磁炉不用风扇可以么
  • 洗衣机脱水桶平衡
  • 液晶显示器电源故障
  • 夏普电视故障处理
  • 杭州松下双桶洗衣机维修
  • 空调室外机管温坏了
  • 滚筒洗衣机跳动原因
  • 通电自动播放音响
  • 奥克斯 洗衣机
  • 前锋热水器水温不热
  • 免责声明: 维修资讯栏目部分文章来自互联网(全部或部分摘录),如果版权所有人不同意我们转载,请通过书面告知,我们将在第一时间删除。文章内容不代表中国易修网观点,仅供参考,请谨慎使用。中国易修网对您使用的后果概不负责。您可以转载或引用本站的资讯栏目内容,请注名文章出处,但不得用以任何商业用途。