1.动态创建多维数组

int ** createArray(int rows, int cols) {
int **x, i;
x = (int **)malloc(rows * sizeof(*x));
for (i = ; i < rows; i++) {
x[i] = (int *)malloc(cols * sizeof(**x))
}
return x;
}

1.线性表

  特点: 1)存在唯一的一个被称为第一个的数据元素 2)存在唯一的一个被称为最后一个的数据元素 3)除第一个外, 集合中的每个数据元素均只有一个前驱 4)出最后一个外, 集合中的每个数据元素只有一个后继

  表示方法: 1)顺序表示 2)链式表示

1.冒泡排序

void sort(int list[], int n) {
int i, j, temp;
for (i = ; i < n - ; i++) {
for (j = i; j < n; j++) {
if (list[i] < list[j]) {
temp = list[i];
list[i] = list[j];
list[j] = temp;
}
}
}
}

2.二分查找

int binsearch(int *list, int search, int num) {
int middle;
int left = ;
int right = num - 1; while (left <= right) {
middle = (left + right) / ;
if (list[middle] > search) {
right = middle - ;
} else if (list[middle] == search) {
return middle;
} else {
left = middle + ;
}
} return -;
}

递归版本

int binsearch(int *list, int search, int left, int right) {
int middle;
if (left <= right) {
middle = (left + right) / ;
if (list[middle] > search) {
return binsearch(list, search, left, middle - );
} else if (list[middle] == search) {
return middle;
} else {
return binsearch(list, search, middle + , right);
}
}
return -;
}

3.

最新文章

  1. This Node源码分析
  2. datatables ajax后端请求那些坑
  3. MySQL数据库sql语句的一些简单优化
  4. new出对象的作用
  5. IOS开发之——友盟社会化分享UMSocial_SDK的使用
  6. MySql与Java的时间类型
  7. SharePoint 2013 Nintex Workflow 工作流帮助(十二)
  8. hdu1166-敌兵布阵(线段树)
  9. Lazy Load Plugin for jQuery延迟加载测试成功
  10. WIN10使用管理员权限运行VS2013
  11. day-5 python协程与I/O编程深入浅出
  12. 在linux中输出每个group的用户成员
  13. Application-Level层级异常捕获并定位程序的异常位置
  14. java读取配置文件的信息
  15. 打开Delphi 10.1 berlin提示脚本错误的解决方法
  16. Java快速开发平台强大的代码生成器,JEECG 3.7.5 VUE+ElementUI SPA单页面应用版本发布
  17. perl usage()和getopt
  18. 楼层验证B1~1F等
  19. Java VM 环境配置过程要点( win10,64位)
  20. acer笔记本禁用或关闭触摸板

热门文章

  1. SNOI2017(BZOJ5015~5018)泛做
  2. 一个简单的Spring程序
  3. Problem A: 零起点学算法80——逆序输出(数组练习)
  4. Codeforces Beta Round #2 B. The least round way dp
  5. ps制作导航条 分割线技巧
  6. php类库安装xml simplexml
  7. Spring WebSocket入门(二) 转载
  8. iOS:CALayer核心动画层
  9. JVM调优思路
  10. UML类图几种关系的总结 【转】