机缘
在高中期间,上网搜各种问题时就会用到CSDN,帮助了我很多很多。
现在到了大学,在看鹏哥C语言的视频时,提到说把学习的知识通过博客记录下来可以加强记忆,再加上之前就经常会用到CSDN来解决问题,我也想当那个可以帮助别人的人,就开始博客之旅了
收获
自开始写博客以来,一共128天,断断续续写了16篇博客,虽然在别人看来我这300多的粉丝可能微不足道,但在我看来,是这300多的粉丝一路支撑我创作博客至今,一个月前我的总阅读量也成功突破了1w大关,到目前为止我的点赞量有375,收藏量有197,就是这些正向反馈才能让我一直坚持下去
日常
提示:当前创作和你的工作、学习是什么样的关系
例如:
- 创作是否已经是你生活的一部分了
- 有限的精力下,如何平衡创作和工作学习
- …
成就
到目前为止,我认为我写过的最好的代码就是这道题
typedef struct
{
int* _a;
int _front;
int _rear;
int _k;
} MyCircularQueue;
MyCircularQueue* myCircularQueueCreate(int k)
{
MyCircularQueue* qe=(MyCircularQueue*)malloc(sizeof(MyCircularQueue));
qe->_a=(int*)malloc(sizeof(int)*(k+1));//多开一个
qe->_front=0;
qe->_rear=0;
qe->_k=k;
return qe;
}
bool myCircularQueueIsFull(MyCircularQueue* obj);//在这声明是因为这两个函数在最下面,不声明的话找不到
bool myCircularQueueIsEmpty(MyCircularQueue* obj);
bool myCircularQueueEnQueue(MyCircularQueue* obj, int value)
{
if(myCircularQueueIsFull(obj))
return false;
obj->_a[obj->_rear]=value;
obj->_rear++;
obj->_rear=obj->_rear%(obj->_k+1);
return true;
}
bool myCircularQueueDeQueue(MyCircularQueue* obj)
{
if(myCircularQueueIsEmpty(obj))
return false;
obj->_front++;
obj->_front=obj->_front%(obj->_k+1);
return true;
}
int myCircularQueueFront(MyCircularQueue* obj)
{
if(myCircularQueueIsEmpty(obj))
{
return -1;
}
return obj->_a[obj->_front];
}
int myCircularQueueRear(MyCircularQueue* obj)
{
if(myCircularQueueIsEmpty(obj))
{
return -1;
}
else
{
int tail=obj->_rear-1;
if(tail==-1)//如果rear在数组的0下标处,再减就会成-1,此时返回数组的最后一个位置的元素
return obj->_a[obj->_k];
return obj->_a[tail];
}
}
bool myCircularQueueIsEmpty(MyCircularQueue* obj)
{
return obj->_rear==obj->_front;
}
bool myCircularQueueIsFull(MyCircularQueue* obj)
{
return (obj->_rear+1)%(obj->_k+1)==obj->_front;
}
void myCircularQueueFree(MyCircularQueue* obj)
{
free(obj->_a);
free(obj);
}
憧憬
大学四年期间,想在前三年或前两年就学完相应知识,也希望我能一直坚持下去写博客,下次纪念日的时候争取粉丝是现在的两倍~