自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

转载 Flink中的计算资源-理解与实现

另外,框中的虚线是operator chain内部的数据流,这个流内的数据不会经过序列化/反序列化、网络传输,而是直接将消息对象传递给下游的 ChainOperator 处理,这是性能提升的关键点,在底层是通过 ChainingOutput 实现的,源码如下方所示,需要注意的是,这里不会涉及到CPU的隔离,slot目前仅仅用来隔离task的内存。将operators链接成task是非常有效的优化:它能减少线程之间的切换,减少消息的序列化/反序列化,减少数据在缓冲区的交换,减少了延迟的同时提高整体的吞吐量。

2023-11-16 15:28:48 92 1

原创 单链表就地逆置

第一种:将整个链表一分为二(一个小链表,一个大链表),小链表包括头结点和首元结点,大链表是除这两个结点之外的整个链表的结点。(前提这不是空表。可以只看王道的代码不看这种)从后面的大链表中依次取出一个结点头插法插入小链表中直至取完所有结点。注:我们需要声明两个指针s和b,s初期用来将链表分为两个,后期用来做工作指针。b用来保存和更新大链表的每个结点的地址初始操作:声明指针s指向首元结点,声明指针b指向首元结点的后继结点(即保存了大链表的第一个结点地址),然后将首元结点的next指针置位NULL。这样我们

2021-05-30 12:39:50 632

原创 在带头结点的单链表L中,删除所有值为x的结点,并释放其空间

第一种遍历整个L,遇到data为x就删除,需要三个指针,pre初始值指向头结点,保持指向为p的前驱结点。p指向首元结点,用来遍历整个链表。q用来做删除结点操作指针Del_x(Linklist &L,Elemtype x){ Lnode *p=L->next,*pre=L,*q; while(p!=NULL){ if(p->data==x){ q=p; // q指向该结点 p=p->next; pre->next=p

2021-05-26 14:18:42 1176

原创 递归删除不带头结点的单链表L中所有值为x的结点

void Del_X_3(LinkList &L,ElemType x){LNode *p; //p指向待删除结点,if(L==NULL) //递归出口 return ; if(L->data==x) { p=L; L=L->next; //删除L,并让L指向下一结点 free(p); Del_X_3(L,x); }else { Del_X_3(L->next,x);//递归调用 }

2021-05-26 13:44:50 611 1

原创 C语言 基础篇之常用字符串函数详解

C语言 基础篇之常用字符串函数详解不带n的只需要考虑p1的数组是否足够大不需要考虑‘\0’的问题,带n的需要考虑’\0’。strlen int len=strlen§.:返回一个int类型数值,即返回字符串p的长度,‘\0’不算做一个长度。strcpy: 把src所指向的字符串复制到dest所指向的空间中,’\0’也会拷贝过去。. char *strcpy(char *dest, const char *src);参数:dest:目的字符串首地址。src:源字符首地址。返回值:成功

2021-01-22 22:03:52 348

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除