冒泡排序C语言实现

tinyfisher 发表于 2012-05-02

最近打算将各种常用的算法(排序,查找等)复习一遍,都是用C语言实现,代码均在codeblocks下编译通过。
第一篇:冒泡排序

void swap(int *a,int *b)
{
    int temp=*a;
    *a=*b;
    *b=temp;
}

void bubble_sort(int input[],int length)
{
    int i,j,flag=1;
    for(i=0;i<length&&flag;i++)
    {
        flag=0;             //若flag为0 表示这一趟没有交换,则已经排序完成,无需再扫描,即使扫描 也不会发生交换
        for(j=length-1;j>i;j--)
        {
            if(input[j]<input[j-1])
            {
                 swap(&input[j],&input[j-1]);
                 flag=1;
            }
        }
    }
}

github 搭建博客

tinyfisher 发表于 2012-04-01

注册github帐号

在github上注册帐号,如果你的帐号为tinyfisher 创建tinyfisher.github.com这个项目.

安装jekyll

安装jekyll到github上, 这里我用的是 Jekyll-Bootstrap
执行以下命令

git clone https://github.com/plusjade/jekyll-bootstrap.git tinyfisher.github.com
cd tinyfisher.github.com
git remote set-url origin git@github.com:tinyfisher/tinyfisher.github.com.git
git push origin master

配置jekyll

修改 _config.yml文件 将着一些基础信息配置成你的个性化设置

配置首页

jekyllbootstrap默认的首页是index.md
但是如果需要分页效果的话需要使用的是index.html, 并且修改_config.yml, 添加一个配置项paginate: 5
详细的配置可以clone我的博客项目进行查看

添加文章

_posts目录下新建一个markdown(*.md)文件, 文件命名规范是yyyy-mm-dd-url, 例如该文章的文件为2012-05-18-github-blog-jekyll-bootstrap.md
得到的访问路径却是/javascript/2012/05/18/github-blog-jekyll-bootstrap/其中/javascript是在markdown文件中配置的.

markdown文件头需要几个配置, 以下是该文章的头配置

---
layout: post
title: 在github上搭建博客
category: javascript
tags: [github, bootstrap, jekyll, javascript]
---

每个markdown必须在头部加上这段. 然后下面直接写markdown代码就行了.

遇到的问题

1.打开浏览器出现GBK编码错误

打开Git Bash后运行 jekyll server在本地测试时出现一下错误

Liquid error: invalid byte sequence in GBK

这个问题是在 Windows 下出现的,英文博文没问题,中文博文就会报错,原因是你所使用的控制台并不能工作 UTF-8。

临时方案:在执行 jekyll 命令前,将当前控制台的代码格式转为 UTF-8: $export LC_ALL=en_US.UTF-8 $export LANG=en_US.UTF-8 $jekyll –server –auto

永久方案:添加两对用户自定义的环境变量,LC_ALL=en_US.UTF-8LANG=en_US.UTF-8在git安装目录Git\etc\profile文件里加入以下内容

export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8

参考文献:3min搭建jekyll博客