加载中
算法导论2nd 10.2-8 单指针双向链表

思路:按提示是将指针转换为整型数,然后做异或保存为np。我们知道对于异或操作来说,如果c = a ^ b,那么c ^ a = b且 c ^ b = a。也就是说对于异或的结果,可以根据其中一个原操作数解出另一...

06/22 16:48
0
fedora dnf.repo

# change /etc/dnf/dnf.conf: gpgcheck=0 [fedora] name=Fedora $releasever - $basearch baseurl=https://mirrors.tuna.tsinghua.edu.cn/fedora/releases/$releasever/Everything/$basearch...

05/26 19:38
0
算法导论2nd 10.1-7

思路:两个队列q1和q2,两个队列指针pusher和poper分别指向q1和q2,push时调用pusher->enqueue,然后将poper里的元素全部dequeue并enqueue到pusher,最后交换pusher和poper。 #include <iost...

05/14 17:20
0
算法导论2nd 10.1-4

两个细节 循环数组的实际size为n+1 enqueue时tail和head不允许重合(保证元素个数为n),dequeue时可以重合 class Queue { int *array; int head, tail, size; Queue(Queue &&q) = delete; ....

05/14 10:08
0
算法导论2nd 9.1-1

为方便处理,设输入规模n为2的次方。 算法:将数组划分成对,比较选出最小的元素,这些选出的最小元素再次划分成对,再比较选出最小元素,重复这个过程,直到找出整个数组的最小元素。这个过...

05/07 01:19
0
C++引用计数原理和实现

引用计数主要用于自动垃圾回收,C++程序直接运行于cpu,本身是没有垃圾回收功能的,但可以通过引用计数实现一个带半自动垃圾回收功能的类,之所以称之为半自动,典型的是因为它不像java/pyth...

04/17 13:34
2
shared_ptr源码分析

源码来自llvm 8.0.0的libc++,精简了一些不太重要的部分,重要的地方加了注释。目的是学习智能指针的实现原理。关于shared_ptr的线程安全问题,cppreference上的描述: All member functions...

04/15 23:06
15
epoll源码分析

按如下流程来分析epoll: 系统级的初始化 创建epollfd 向epollfd添加fd(本文只关心添加) 事件到来,激活唤醒 epoll_wait 系统级的初始化 static int __init eventpoll_init(void) { struc...

04/11 23:08
7
C++ Simple declaration

C++是静态类型语言,提供了丰富的数据类型,它的简单声明的文法如下(摘自C++11标准): simple-declaration: decl-specifier-seq(opt) init-declarator-list(opt) ; attribute-specifier-se...

04/11 11:49
2
通过N个线程顺序循环打印从0至100

如: 通过N个线程顺序循环打印从0至100,如给定N=3则输出: thread0: 0 thread1: 1 thread2: 2 thread0: 3 thread1: 4 ..... 解:N个线程对应N个条件变量,依次激活下一个线程 #include <iost...

03/17 21:27
4
Linux kernel 4.20之select/poll

结论 两者都基于struct poll_wqueues(poll机制),调用file.f_op->poll获得事件mask; select以事件类型为切入点,poll以fd为切入点; 磁盘文件不可以poll。 核心代码 struct poll_table_st...

Linux kernel 4.20 socket源码分析

结论 基于unix“一切皆文件”的思想,创建名为sockfs的伪文件系统(挂载点为socket:,由于不是/,所以无法直接看到,但可以通过ls -l /proc/$pid/fd/看到),实现通用文件系统的操作接口,这...

/etc/profile.d/prompt.sh

git_prompt() { local prompt= local branch=`git branch 2>/dev/null | sed -n 's/^* //p'` test -z $branch && return local status=$(git status -s | awk '{a[$1]+=1}END{for(i in a)pri...

2018/12/24 18:04
0
grub.cfg

set uuid=2C69-9ECA menuentry "Windows" { insmod ntfs set root=(hd0,1) chainloader +1 } menuentry "LMT ISO" { search --set=root --fs-uuid $uuid loopback loop /LMT.ISO......

2018/12/24 17:50
19
fontconfig.local

<?xml version="1.0"?> <!DOCTYPE fontconfig SYSTEM "fonts.dtd"> <fontconfig> <match target="pattern"> <test qual="any" name="family"> <string>monospace</string> </test> <e......

2018/12/24 17:49
0
putty theme

Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\Sessions\Default%20Settings] "Colour0"="217,230,242" "Colour1"="217,230,242" "Colour2"="14,27,...

2018/12/24 17:15
2
ipv6最长前缀匹配算法

import java.net.Inet6Address; import java.io.BufferedReader; import java.io.FileReader; import java.io.InputStreamReader; public final class IPv6Base { private final class Node ...

2018/12/14 10:41
12
lvalue & rvalue & lifetime

That is, an object is a contiguous region of storage; an lvalue is an expression that refers to an object. The word “lvalue” was originally coined to mean “something that ca...

2018/08/31 15:56
2
hbase 0.98.24 api使用

val conf = HBaseConfiguration.create conf.addResource(new Path("hbase-site-xxx.xml")) // hbase-site-xxx.xml需在classpath的jar包中 conf.writeXml(System.out) // 看hbase-site-xxx....

2018/07/06 16:38
3

没有更多内容

加载失败,请刷新页面

返回顶部
顶部