Browsing the archives for the 算法 tag

QuickSort

今天有点懒,这个是从 wikipedia 上摘下来的:

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

void quicksort(int arr[],int beg,int end)
{
if (end >= beg + 1)
{
int piv = arr[beg], k = beg + 1, r = end;

while (k < r)
{
if (arr[k] < piv)
[...]

0 Comments

选择排序

其实这个好简单阿,可是我在写这个的时候却陷入了作用域规则的圈套里了(其实不是圈套,只是自己有点糊涂。。哈哈)
看代码吧:

void chooseSort(int* input, int length) {
int mark, min;
for (int i = 0; i < length; i++) {
for (int j = i; j < length; j++) {
if (input[j] < min) {
min = input[j];
mark = j;
}
}
input[mark] = input[i];
input[i] = min;
min = [...]

0 Comments

冒泡排序

今天开始每天写一个算法的实现,大多比较简单,达人就不要围观了。
另外欢迎大家评论赞美拍砖吐口水,别写敏感内容就好。。
其实我自己在考虑,我是只用 C 语言实现呢,还是加上点别的呢?反正我每个语言学的也都是半调子 :p
anyway, 回归主题,今天是冒泡排序

void Bubble(int* input, int length) {
for (int i = 0; i < length; i++) {
for (int j = 1; j < length; j++) {
int temp;
[...]

0 Comments

质数质数质数

其实对于质数的定义特别简单:只能被自己和 1 整出的数字就是质数。
定义如此简单,但是有很多性质却还是需要发掘的。
让我如此“好为人师”的原因是做了这样一道题目:
The prime factors of 13195 are 5, 7, 13 and 29.
What is the largest prime factor of the number 600851475143 ?
也就是说找出来 600851475143 的最大质因子
我开始的想法是列出来所有可能的素数,然后一个一个除下来,代码如下:

#!/usr/bin/env python
from math import *
def findPrimes(max):
”’Finding primes”’
N = max + 1
prime = [0] * N
list [...]

0 Comments

算法站点 Project Euler

今天偶然发现一个网站:http://projecteuler.net
全是关于 算法的~
总共有 251 道算法题。
每一题都有相应的讨论区 很有意思 至少我就在今天见到了很多从来没有见过的语言。 哈哈
我想,我的假期就一直泡在这个网站里好拉~

3 Comments