摘要:
概念: 像一个普通的链表结点中,其中成员next通常是指向同类型结点的指针.这就约束了链表中结点必须是同一类型,从而整个链表都只能保存同一类型的数据。而异质链表则是让next指向任何一种类型,也包括存有其他类型值得结点。这里就采用模板的方式.数据结构:templatestruct hetero_no... 阅读全文
摘要:
概念: 信号时一种异步事件:信号处理函数和程序的主循环式两条不同的执行路线,信号处理函数需要尽可能快地执行完毕,以确保该信号不被屏蔽.(为了避免一些竞态条件,信号在处理期间,系统不会再次出发它)太久.这里就采用一种常用的解决方案是:把信号的主要处理函数逻辑放到程序的主循环中,当信号处理函数被触发时,... 阅读全文
摘要:
概论:select、poll和epoll三组I/O复用系统调用,这3组系统调用都能同时监听多个文件描述符。它们将等待由timeout参数指定的超时时间,直到一个或者多个文件描述符上有事件发生时返回.返回值是就绪的文件描述符的数量。返回0表示没有事件发生,超时.我们从事件集、最大支持文件描述符的数量、... 阅读全文
摘要:
题目:The string"PAYPALISHIRING"is written in a zigzag pattern on a given number of rows like this: (you may want to display this pattern in a fixed font... 阅读全文
摘要:
题目 Given a string s,find the longest palindromic substring in S.You may assume that the maximum length of S is 1000,and there exist one unique longes... 阅读全文
摘要:
epoll函数epoll函数的使用与select、poll上有很大的差异.epoll使用一组函数来完成任务,而不是单个函数.epoll把用户关心的文件描述符上的事件放在内核里的一个事件表中,从而无需每次都要重复传入文件描述符集或者事件集.epoll需要一个额外的文件描述符,来唯一标示内核中的这个事件... 阅读全文
摘要:
IO复用:I/O复用使得程序可以同时监听多个文件描述符,这对提高程序的性能至关重要。例如TCP服务器要同时处理监听socket和连接socket,客户端要同时处理用户输入和网络连接.Linux下实现I/O复用的系统调用主要有select、poll和epoll.select函数:#include i... 阅读全文
摘要:
tee函数使用功能描述:tee函数在两个管道文件描述符之间复制数据,也是零拷贝操作.它不消耗数据,因此源文件描述符仍然可以用于后续的操作.函数原型:#include ssize_t tee(int fd_in,int fd_out,size_t len,unsigned int flags);函数... 阅读全文
摘要:
splice函数: 功能描述:用于在两个文件描述符之间移动数据,也是零拷贝操作。函数定义如下:1 #include 3 ssize_t splice(int fd_in,loff_t* off_t,int fd_out,loff_t* off_out,size_t len,unsigned i... 阅读全文
摘要:
题目: There are two sorted arrays A and B of size m and n respectively.Find the Median of two sorted arrays.The overall run time complexity should be O(... 阅读全文