
数据结构和算法总结
文章平均质量分 69
总结数据结构和算法里的实现方法
夜半读核
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
推荐一个讲解排序算法很好的博客
1.推荐一个讲解排序算法很好的博客 之前自己结合教科书的例子实现了一些基本的排序算法。前几天看了关注的一个大佬的排序算法总结的笔记,看完后感觉对这些排序算法的理解更深刻了,而且大佬的总结的非常易懂,代码的实现如同他的讲解一样简单且容易记住,和他的代码一对比,我自己的一些算法的实现很绕,万一面试让写,会很容易出错。 大佬博客:https://blog.youkuaiyun.com/jiange_zh/category_5787591.html?spm=1001.2014.3001.5482 2.我的总结 看了大佬博客后,原创 2021-04-27 21:28:46 · 133 阅读 · 0 评论 -
[力扣c语言实现] 位运算
位运算 231. 2的幂 给定一个整数,编写一个函数来判断它是否是 2 的幂次方。 %d %x 1 1 2 10 4 100 8 1000 16 10000 由以上表格可知,n为2的幂,那么n的二进制中1的个数一定为1,于是我们查找n的二进制中1的个数即可得到其是否为2的幂. 代码如下: bool isPowerOfTwo(int n){ int num_1 = 0; while (n > 0) { num_1 += (n&a原创 2021-03-13 22:58:03 · 605 阅读 · 0 评论 -
基于栈的辅助,详解二叉树的三种非递归遍历方式
基于栈的辅助,详解二叉树的三种非递归遍历方式 二叉树实例: 二叉树结点定义: typedef struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; }Node; 定义一个栈及其出入栈的操作: typedef struct st_stack { Node *array[10000];//节点指针数组,用于存放二叉树的节点指针 int top; int tail; int si原创 2021-03-07 23:16:20 · 639 阅读 · 0 评论 -
直接插入排序
直接插入排序1.代码如下2.思路总结 1.代码如下 #include <stdio.h> //O(n) = 1.最大时间复杂度为O(n^2) void insertsort(int *a,int size) { if (a == NULL || size == 0) { return ; } int i = 0,j = 0,k = 0; int tmp = 0; ...原创 2020-02-23 23:02:19 · 123 阅读 · 0 评论 -
快速排序
快速排序1.代码实现2.思路总结 1.代码实现 #include <stdio.h> int partition(int *g,int left,int right) { int key = g[left]; while(left<right) { while(left<right && g[right] >=...原创 2020-02-23 22:24:53 · 148 阅读 · 0 评论 -
堆以及堆排序
堆以及堆排序1. 代码实现 1. 代码实现 //2019-04-23 23:20完成 #include<stdio.h> #include<stdlib.h> #include<string.h> void Swap(int *a,int *b) { int temp = *a; *a = *b; *b = temp; } void ...原创 2020-02-23 22:04:38 · 114 阅读 · 0 评论