中国易修网>维修资讯>

c语言经典代码100

c语言经典代码100

浏览次数:1012次    时间:2024-07-06
  • 资讯详情
  • 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;

    http://www.easiu.com/common/images/DKlSQS9lov_1.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) {

    http://www.easiu.com/common/images/2qdvcpphxo0.jpg

    set_pixel(x1, y1);

    int e2 = 2 * err;

    if(e2 > -dy) {

    err -= dy;

    x1 += sx;

    }

    if(e2 < dx) {

    err += dx;

    y1 += sy;

    }

    }

    }

    ```

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

  • 热门资讯
  • 售后维修电话查询
  • 深圳布吉奥克斯空调售后

    深圳布吉奥克斯空调售后

    液晶电视电源灯亮荧屏不显示

    液晶电视电源灯亮荧屏不显示

    海信智能电视原理图

    海信智能电视原理图

    thx201电磁炉

    thx201电磁炉

    长虹930v电视

    长虹930v电视

    空调制冷为什么会滴水

    空调制冷为什么会滴水

    空调应急开关强制制冷

    空调应急开关强制制冷

    空调制热外机吹冷风

    空调制热外机吹冷风

    水冷空调有海尔的么

    水冷空调有海尔的么

    创维液晶电源电路图

    创维液晶电源电路图

  • 其它资讯相关文章
  • 液晶电视声音越来越小

    液晶电视声音越来越小

    aux空调质保期

    aux空调质保期

    东芝授权售后维修站

    东芝授权售后维修站

    液晶电视电源板维修图解

    液晶电视电源板维修图解

    空调启动时电脑重启

    空调启动时电脑重启

    天鹅风冷柜机故障代码

    天鹅风冷柜机故障代码

    海尔空调 加氟利昂

    海尔空调 加氟利昂

    开关电源过流保护电路

    开关电源过流保护电路

    电磁炉可调电阻的作用

    电磁炉可调电阻的作用

    重庆格力电器待遇

    重庆格力电器待遇

  • 其它资讯相关问题
  • tcl电视反应很慢什么弄    未回答
  • 深圳制冷空调维修    未回答
  • 海信变频空调不起动    未回答
  • 格力空调显示屏h5    未回答
  • 维修电动机故障排除处理    未回答
  • 海尔模糊电脑全自动洗衣机的拆卸    未回答
  • 美的电磁炉18伏电压    未回答
  • 新科变频空调停机    未回答
  • 康佳智能电视黑屏维修    未回答
  • 平板电脑电路图分析    未回答
  • 热水器燃烧检测探针    未回答
  • lc863324A脚功能及电压    未回答
  • 空调主板维修图解    未回答
  • 山特tg500故障维修    未回答
  • 电磁炉 三电压    未回答
  • 特灵中央空调故障维修    未回答
  • 热水器的原因分析    未回答
  • 海信电视机台标抖动不定时关机    未回答
  • 空调窗机加氟图片    未回答
  • 电脑冰箱制冷但不停机    未回答
  • 其它资讯相关维信息修
  • 600a制冷剂加注压力
  • 康佳TK机芯场扫描通病
  • 空调漏氟对孕妇有影响吗
  • 滚筒洗衣机塑料外壳如何清洁
  • 三星显示器 闪烁
  • 中意空调还有维修吗
  • 志高多联机故障代码大全
  • 电磁炉显示屏的故障
  • 三星液晶电视开机慢
  • 电视机遥控器按键乱跳
  • 家用逆变器故障维修技术
  • 飞利浦电视机解锁
  • 空调制冷变成制热了
  • 滚桶洗衣机用电量
  • 电热丝的工作原理
  • 西门子电热水器和阿里斯顿那个好
  • 格莱士太阳能热水器
  • 格力空调维修武汉点
  • 冰柜加氟之后制冷效果差
  • 空调内机怎样换万能板
  • 三星电视厂家联系方式
  • 南宁樱花油烟机售后
  • 相关资讯
  • 三星洗衣机拆机
  • 奥克斯空调停机
  • tcl液晶电视开机问题
  • 煤气热水器自动熄火
  • 科龙空调制热开几度好
  • 波轮洗衣机内桶是不是一样大
  • 格力gmv故障代码大全
  • 空调起动一会就停 灯亮
  • 嘉兴iphone售后
  • 空调缺氟利昂运行
  • 免责声明: 维修资讯栏目部分文章来自互联网(全部或部分摘录),如果版权所有人不同意我们转载,请通过书面告知,我们将在第一时间删除。文章内容不代表中国易修网观点,仅供参考,请谨慎使用。中国易修网对您使用的后果概不负责。您可以转载或引用本站的资讯栏目内容,请注名文章出处,但不得用以任何商业用途。