算法+数据结构
文章平均质量分 58
inavax_vem
喜欢编程,喜欢算法,现在开始写博客。
展开
-
字符串连接
将两个字符串连接起来,不使用strcat函数#includevoid main(){ char str1[50]; char str2[50]; char str3[100]; int i,k,j; printf("请输入字符串,字符串长度小50:"); scanf("%s",str1); scanf("%s",str2); //先复制字符串str1的字符到字原创 2013-11-27 16:59:49 · 556 阅读 · 0 评论 -
二叉树的实现 Java版
二叉树的操作接口package tree;/** * 树的操作 * * @author liangguojun * * @param * 数据类型 */public interface SQTree { /** * 判断该树是否为空 * * @return 该树为空则返回true,否则返回false */ publ原创 2013-11-28 12:31:02 · 608 阅读 · 0 评论 -
平衡二叉树(AVL树)
平衡二叉树的接口package tree;/** * 平衡二叉树的操作 * * @author liangguojun * * @param * 数据类型,该数据类型必须实现Comparable接口 */public interface SortAVLTree> { public static final int ASC_VALUE = 1;原创 2013-11-28 12:46:03 · 541 阅读 · 0 评论 -
排序二叉树的实现 Java版
排序二叉树的接口package tree;/** * 二叉排序树 * * @author liangguojun * * @param * 数据类型 */public interface SortTree> { // 降序 public static final int DESC_DATA = 0; // 升序 public static原创 2013-11-28 12:40:18 · 677 阅读 · 0 评论 -
线索二叉树的实现
线索二叉树的接口package tree;/** * 线索二叉树的操作行为接口 * @author liangguojun * * @param */public interface ThreadTree { /** * 返回线索二叉树的深度 * * @return 返回线索二叉树的深度 */ public int getDept(); /**原创 2013-11-28 12:37:07 · 703 阅读 · 0 评论 -
线性结构之队列 Java版
队列的操作接口:package queue;/** * 队列的操作 * * @author liangguojun * * @param * 数据类型 */public interface SQQueue { /** * 清空队列的所有数据元素 */ public void clear(); /** * 判断队列是否为空原创 2013-11-28 09:44:48 · 642 阅读 · 0 评论 -
线性结构的顺序表实现 Java版
顺序表的操作接口package com.list;/** * 顺序表的方法行为接口 * @author liangguojun * * @param */public interface SQList { /** * 返回顺序表的长度 * * @return 返回顺序表的长度 */ public int getLength(); /** *原创 2013-11-28 09:30:07 · 752 阅读 · 0 评论 -
线性结构之栈的实现 Java版
栈的操作接口package stack;/** * 栈的操作行为接口 * @author liangguojun * * @param */public interface SQStack { /** * 判断该栈是否为空,为空则返回true,否则返回false * * @return 栈为空则返回true,否则返回false */ public bool原创 2013-11-28 09:38:23 · 547 阅读 · 0 评论 -
求完数
/*一个数如果恰好等于它的因子之和,这个数就称为完数。找出1000之内的所有完数,并打印完数例如6的因子为:1,2,3 6=1+2+3 */#includevoid main(){ int i,sum,k; for(i=1;i<=1000;i++){ sum=0; for(k=1;k<i;k++){ if(i%k==0){ sum+=k;原创 2013-11-26 19:37:04 · 520 阅读 · 0 评论 -
一个球
一个球从100m高度自由落下,每次落地后跳回原高度的一半,在落下,在反弹。求它在第10次落地时,共经过多少米?第10次反弹多高?#includevoid main(){ double s=0.0,h=100.0; int i; for(i=1;i<=10;i++){ s+=h/2*3; h/=2; printf("第%d次落下,经过的长度为%f米,反弹的高度%f米\n"原创 2013-11-26 19:53:13 · 515 阅读 · 0 评论 -
猴子吃桃问题
猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天,早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想在吃时,就只剩下一个桃子了。求第一天共摘了多少个桃子。#includevoid main(){ int s=1,i,k; for(i=10;i>0;i--){ s=(s+1)*2;原创 2013-11-26 20:04:34 · 487 阅读 · 0 评论 -
求100之内的素数
求100之内的素数#include#includevoid main(){ int i,k; int n=100; //设置一个标志,判断该数是否是素数 int is=0; printf("%d ",2); for(i=1;i<=n;i+=2){ for(k=2;k<sqrt(i)+1;k++){ if(i%k==0){ //假如i不是素数,则设置标志为0原创 2013-11-27 15:15:00 · 482 阅读 · 0 评论 -
数组的值按逆序从新存放
将一个数组的值按逆序从新存放例如,原来顺序为 8,6,5,4,1,要求改为1,4,5,6,8#includevoid main(){ int test[]={8,6,5,4,1}; int i,length,tmp; int max,k; //求数组的长度 length=sizeof(test)/sizeof(test[0]); //取中值 k=length/2;原创 2013-11-27 15:40:31 · 1103 阅读 · 0 评论 -
输出杨辉三角
输出杨辉三角,输出到第10行#include main(){ int N=10; int i,j; int a[10][10]; //把第一列和每一行的最后一个数赋值为1 for(i=0;i<N;i++) { a[i][0]=1; a[i][i]=1; } //计算其余各项的值 for(i=2;i<N;i++) { for(j=1;j<i;原创 2013-11-27 16:10:02 · 918 阅读 · 0 评论 -
折半查找
有15个数按大到小的顺序存放在一个数组中,输入一个数,要求用折半查找法,找出该数是数组中第几个元素的值,如果该数不再数组中,则输出"无此数"#includevoid main(){ int i,input,index; int test[15]; int length=15; int start=0,end=15; for(i=1;i<=15;i++){ tes原创 2013-11-27 16:41:45 · 554 阅读 · 0 评论 -
大数减法、加法、乘法
#include#includeusing std::string;using std::cin;using std::cout;using std::endl;//字符转换为字面数字int CharToInt(char value){ return value-'0';} //打印结果函数void print(int* array,int length ){ i原创 2014-09-14 16:51:13 · 557 阅读 · 0 评论