C语言与数据结构
一只叫可乐的金毛
这个作者很懒,什么都没留下…
展开
-
C语言-递归做字符串数组元素全排列
#include <stdio.h>#include <string.h>void swap(char *a, char *b) { char tmp; tmp = *a; *a = *b; *b = tmp; }int count = 0;void permutation(char *list, int start, int end, int deep){...原创 2020-02-20 14:57:44 · 613 阅读 · 0 评论 -
C语言-递归二分法查找
#include <stdio.h>int search(int *var, int target, int low, int high){ int mid = (low + high)/2; while (low < high) { if (target > var[mid]) { return search(var, target, mi...原创 2020-02-18 19:49:46 · 848 阅读 · 0 评论 -
C语言-顺序查找和二分查找
顺序查找#include <stdio.h>typedef void (*call_back)(int);void printIndex(int index){ printf("%d\t",index);}int linear(int *array, int length, int target, call_back ptr){ int count = 0...原创 2020-02-13 17:25:58 · 818 阅读 · 0 评论 -
C语言-选择排序
选择排序时间复杂度: 每次选择数组中最小值放到左边, 即为 (n-1) + (n-2) + ... + 1= n(n-1)/2 ~ o(n^2)空间复杂度: 两个临时变量, tmp用于交换, min用于确认当前遍历中的最小元素. o(1)#include <stdio.h>#include <stdlib.h>#include <time.h>...原创 2020-02-12 14:30:12 · 111 阅读 · 0 评论 -
C语言-冒泡排序
冒泡排序时间复杂度 o(n^2) 【循环次数 (n-1) + (n-2) + (n-3) + .... + [n-(n-1)]】= n(n-1)/2 ~ n^2空间复杂度 o(1) 【1个临时变量 tmp】#include <stdio.h>#include <stdlib.h>#include <time.h>void swap(int ...原创 2020-02-11 16:55:09 · 125 阅读 · 0 评论 -
C语言-指针
整型变量与指针#include <stdio.h>void var_point(int *pvar1, int *pvar2){ printf("The value of *pvar1 and *pvar2: %d, %d \n", *pvar1, *pvar2); printf("The mem addrs of pvar1 and pvar2: %p, %p ...原创 2020-02-11 16:50:28 · 89 阅读 · 0 评论