摘要:
要想成为编程牛人,练习ACM题目是最好的途径,今天终于开始了,勉励自己以后更上一层楼,成为牛人。对了发现一个好的博客:http://acm.cplusplus.me/category/raceACM解题报告http://www.cplusplus.me/ C/C++程序员之家HDU1000题目链接:http://icpc.njust.edu.cn/Hdu/1000题目代码:#include <stdio.h>void main(){ int a,b; while(scanf("%d%d",&a,&b)!=EOF) { printf("% 阅读全文
摘要:
计算机常用算法1、迷宫求解2、汉诺塔3、八皇后4、约瑟夫环问题5、括号匹配问题6、伙伴系统7、字符串操作各种算法C语言版数据挖掘经典算法:1、机器学习经典算法:1、图、文档文件夹中:计算机经典算法 都要实现一遍 阅读全文
摘要:
单词 查找树:高级数据结构的第一个经验:1、在博客中加入网络链接、论文链接,对一个数据结构本身及其本质,极其变形有一个全面的了解2、对于从来没写过的数据结构和算法:第一遍参考别人的代码快速写出是一种高效率的方法,可以变通一下,不要再一个从来未接触过的东西上试图自己想出来,太耗时间。参考论文:http://d.wanfangdata.com.cn/Periodical_jsjgcykx201004032.aspxhttp://www.cnblogs.com/tanky_woo/archive/2011/06/08/2075613.html参考文献:http://www.cnblogs.com/t 阅读全文
摘要:
选择排序的思想是在记录中选择关键字最小的记录作为有序序列中第i个记录。其中简单选择排序时最常见的。其他变形有,堆排序,树形选择排序等。下面给出简单选择排序的基本算法:#include "stdafx.h"#include<iostream>using namespace std;int _tmain(int argc, _TCHAR* argv[]){ int sarr[7]={49,38,65,97,76,13,27}; void SelSort(int arr[],int n); SelSort(sarr,7); for(int i=0;i<7;i++ 阅读全文
摘要:
快速排序的算法是通过一趟排序讲待排序的记录分割成独立的两部分,其中一部分记录的关键字均比另一部分的关键字小,然后分别对这两个子序列应用这个方法进行排序。先总结一下写快速排序的过程中发生错误:错误一:递归中还用了while,导致这个递归不能停止。错误二:元素的大小逻辑关系搞错了。快速排序算法首先需要将获得一次划分获得的位置,并以此位置来递归的处理左侧子序列和右侧子序列。/*一次划分算法:1、选第一个元素为基准元素。2、从后向前搜索第一个比基准元素小的,交换到基准元素所在位置。3、从前向后搜索第一个比基准元素大的,交换上述空缺的位置。4、将基准元素赋值到该有的位置,返回该基准元素。*/int Pa 阅读全文