内部排序算法

排序算法按照元素所在的位置可以分为内部排序(internal sort)和外部排序(external sort)。这里我们讨论的都是内部排序算法,即整个排序工作都能够在内存中完成。且约定需要排序的数组中元素个数为N。1. 插入排序插入排序(insertion sort)是最简单的排序算法之一,其特性如下:插入排序由N-1趟(pass)排序组成;在第P趟,我们将位置P上的元素向左移动到它在前P...

Locale的概念及setlocale函数

1. 什么是计算机的Locale关于locale我不知道该怎么样翻译(直译就是地区、地域)才算准确,干脆就叫locale吧,反正它与我们的操作系统的语言环境有着很大的关系。Locale 是软件在运行时的语言环境, 它包括语言(Language), 地域 (Territory) 和字符集(Codeset)。一个locale的书写格式为: 语言_地域.字符集,比如en_US.UTF-8、zh_C...

命令行参数解析函数getopt及getopt_long介绍

1. getopt介绍getopt函数主要用来解析命令行参数,getopt族的函数原型如下:#include <unistd.h> int getopt(int argc, char * const argv[], const char *optstring); extern char *optarg; extern int optind, opterr,...

Linux信号应用之黑匣子程序设计(下)

1. Bug分析在《Linux信号应用之黑匣子程序设计(上)》一文中,我们实现了一个黑匣子程序——在进程崩溃后,可以保存进程的调用栈。但是,在文章结尾我们说程序有bug,那bug是什么呢?先看下面一个程序:#include <stdio.h> #include <string.h> #include <stdlib.h> #include <s...

Linux信号应用之黑匣子程序设计(上)

1. 何为黑匣子程序及其必要性飞机上面的黑匣子用于飞机失事后对事故的时候调查,同理,程序的黑匣子用于程序崩溃后对崩溃原因进程定位。其实Linux提供的core dump机制就是一种黑匣子(core文件就是黑匣子文件)。但是core文件并非在所有场景都适用,因为core文件是程序崩溃时的内存映像,如果程序使用的内存空间比较大,那产生的core文件也将会非常大,在64bit的操作系统中,该现象更...

递归程序是把双刃剑

在我原来的概念里,递归程序是简洁、巧妙、高效的代名词,但是读了《Data Structure And Algorithm Analysis in C》之后,我才发现原来自己之前的认识是错误的,至少递归程序不总是高效的代名词,如果使用不当,将会有很大的性能(效率)问题。1. 两个例子(1)使用递归实现阶乘:long int Factorial(int N) { if ( N <...

堆和栈

堆(heap)和栈(stack)的概念我们经常在程序里面见到,当然一般分两种场合:数据结构和内存相关,两种场合下,概念有些不同。这里我们说的堆栈的概念指的是后者,即内存相关的场景。1. 内存结构简介堆和栈其实都是内存的一部分,只是他们的使用有些不同而已。所以,在探讨二者之前我们先简单看一下与程序相关的内存划分。 图 1 概况图图2 详细图图1为一个简要图,简单来说我们可以认为内存被划分为四块...

ANSI C中的日期和时间集——time.h

日期和时间在我们编程中经常使用,ANSI C中和日期与时间相关的头文件是<time.h>。本文介绍该头文件中定义的类型与时间函数。<time.h>中定义了两个宏(注意是宏,不是类型):第一个是表示空指针的NULL ;第二个宏是CLOCKS_PER_SEC :用这个宏去除clock( )的返回值将产生以秒为单位的时间值。需要注意的是,有的宏或者类型时间并没有在time....
最近评论
bekey是我看花眼了吗,@timestamp始终没见转换为实际业务时间啊
luke但这样不是会造成数据倾斜,导致负载不均衡吗
小程Markdown写数学公式其实蛮坑的,不支持实时显示。当然也可能是我用的MarkdownPad...
小程倪师哥你好,我也是西电的,我最近也在弄个人主页,请问这个网站您自己发博客的时候是直接写html...
yy你后面一次明显心率高很多,特别是耐力部分,大概要150以上。感觉这个跟高心率的持续时间相关性特别大。
lilimon楼主用的是什么版本?github issue url在哪里?新版本会出现这样的问题吗?很多人应...
jie作者大大,您好。看了文章,我有一个问题。就是文中您说:“当然,很多时候自定义路由是为了减少查询...
徐小鹏其实对于TOB领域,一般Routing会用于一个租户(即公司ID)的概念,用了Routing起...
tina第二个代码块的第6行,引用是low-level的
白色风车beforeMethod的断点没有拦截住,但是UI的trace界面能看到请求了,应该启动成功了...