随笔分类 -  算法与数据结构

摘要:#define LOG_FAULT (1 "fmt"", __FUNCTION__, ##__VA_ARGS__); \ else if ((global_trace & (trace)) == LOG_ERROR) \ ... 阅读全文
posted @ 2014-07-17 14:58 李可以 阅读(588) 评论(0) 推荐(0)
摘要:我写了一个简单的线程安全的队列,这个队列写入的速度比读取的速度快,我不明白为什么。/************************************************************************* > File Name: m_queue.c ... 阅读全文
posted @ 2014-04-25 13:54 李可以 阅读(807) 评论(0) 推荐(0)
摘要:1 /************************************************************************* 2 > File Name: time_queue.h 3 > Author: likeyi ... 阅读全文
posted @ 2014-04-08 15:07 李可以 阅读(446) 评论(0) 推荐(1)
摘要:#ifndef DULIST_H#define DULIST_H/* 线性表的双向链表存储结构 */typedef void * elemtype;typedef struct dulnode{ elemtype data; struct dulnode *prior,*next;}dulnode,*dulinklist;/*带头结点的双向循环链表的基本操作(14个) */void list_init(dulinklist *l);void list_destory(dulinklist *l);void list_clear(dulinklist l); int ... 阅读全文
posted @ 2014-04-08 15:05 李可以 阅读(609) 评论(0) 推荐(0)
摘要:第一章:实现队列我觉得实现一个队列还是比较有意思的事情,采用常见的循环数组实现的方式。值得注意的是,Item项是void *类型的,也就是说这个队列可以存储任意类型,因为我们其实存储的是指针。(这么描述真的没问题吗?)queue.h的源代码如下/** * @file queue.h * @brief * */#ifndef QUEUE_H#define QUEUE_H#define MAXQUEUESIZE 1000typedef enum boolean{False,True} bool;typedef void * Item;typedef struct Queue * QueueA... 阅读全文
posted @ 2013-11-13 16:09 李可以 阅读(860) 评论(0) 推荐(1)
摘要:这篇文章仅仅为心中自证,不是算法教学,也不想误人子弟,谢谢各位。第一章:一些感慨 我断断续续学习算法两年多了,这说起来是多么苦涩,是我笨嘛?一直不知道算法是什么东西。从《算法导论》再到《C算法》不清楚看了多少遍,它们就是我过不去的坎吗? 不敢说什么大话,但是我有一个心得,学习算法,一定要理解,理解比会写更重要,会写,很有可能仅仅是记忆好,但是过一段时间忘了, 就对这个算法完全没有印象了,我就是这样。 所以我以后学习算法,一定抱着理解的心态,理解了,就很好。第二章:基本排序算法2.1 冒泡排序 人们常说,冒泡排序是最初级的排序算法,人们说这句话的时候是从时间复杂度这个角度来说的,这么... 阅读全文
posted @ 2013-10-30 08:39 李可以 阅读(1761) 评论(10) 推荐(1)