- 博客(17)
- 收藏
- 关注
原创 双缓冲解决Java绘图严重闪烁
在编写一个Java小游戏时,需要画出一个坦克,于是在坦克这个类中创建了一个内部类实现Runnable接口来启动一个线程,在线程中调用repaint()方法不断重画,线程的睡眠时间设为50毫秒,代码如下:结果发现,运行时闪烁现象特别明显,更改睡眠时间为100秒,1000秒也不行,延迟非常严重,而且仍然闪烁。网上查到原来是因为repaint()不断调用paint()方法引起...
2015-12-27 00:20:56 2018 2
原创 C++模板类线性表的实现与测试
LinearList.h#ifndef LINEARLIST_H#define LINEARLIST_H#include#includeusing namespace std;templateclass LinearList {public:LinearList(int MaxListSize = 10); // constructor~LinearLis
2015-12-27 00:19:25 652
原创 荷兰国旗问题
题目:现有红白蓝三个不同颜色的小球,乱序排列在一起,请重新排列这些小球,使得红白蓝三色的同颜色的球在一起。这个问题之所以叫荷兰国旗,是因为我们可以将红白蓝三色小球想象成条状物,有序排列后正好组成荷兰国旗。如下图所示: 分析:0代表红色,1代表白色,2代表白色,问题即是一个数组元素有序排
2015-12-27 00:16:37 522
原创 微软面试:输出整型数组任意两个元素差的绝对值的最小值
题目:有一个整数数组,请求出两两之差绝对值最小的值, 记住,只要得出最小值即可,不需要求出是哪两个数。这是一道简单基础题,第一次代码如下(有空再优化):#include "stdafx.h"#include#include#includeusing namespace std;int Array_Substract(int arr[],int n){int br
2015-12-27 00:15:17 640 1
原创 返回字符串按顺序的非连续子串的数目
题目:输入两个字符串S和T,判断T在S中出现的次数(S中能找到几个不同的子串T),这里子串是指在一个字符串中删除零或若干字符而不改变其它字符位置得到的新字符串。如“ACE”是“ABCDE”的子串而“AEC”不是。要求提示输入S和T,并打印T在S中出现的次数。S=“rabbbit”,T=“rabbit”返回3,因为T可以由S分别删除三个b中的一个得到。这是我们的一道上机题,没能在课上
2015-12-27 00:13:21 1115
原创 函数指针简单应用
函数指针简单应用 #include "stdafx.h"#includeusing namespace std;double calculate(double a, double b, double(*pf)(double,double)){cout return (*pf)(a, b);}double add(double x, double y){re
2015-12-27 00:10:07 314
原创 C++ Primer Plus (Chapter 9)
9.6 编程练习1golf.hconst int Len = 40;struct golf{ char fullname[Len]; int handicap;};void setgolf(golf& g, const char* name, int hc);int setgolf(golf& g);void handiap(golf &g, int hc)
2015-12-27 00:06:51 359
原创 按ASC码对字符串排序
题目:从键盘接收一行字符串,然后按照字符顺序(ASC码)从小到大进行排序后删除重复的字符。要求使用函数 int rankChar(char str[]) { } 完成,函数返回值为删除字符的个数,打印输入的字符串,删除的字符个数及最后得到的字符串。#include#include#include int rankChar(char input[], char *output){
2015-12-27 00:05:04 6580
原创 数组长度的增减
题目:.假定用一维数组a[0:size-1]来存储一组元素。如果有n个元素,可以把它们存储在a[0],...,a[n-1]中。当n超过size时,数组将不足以存储所有元素,必须分配一个更大的数组。类似地,如果元素的数目比size小很多,我们有可能减少数组的大小,以便释放出多余的空间为其他地方所用。试编写一个模板函数ChangeSize1D把数组的大小从size变成ToSize。函数首先应该分配一个
2015-12-27 00:00:12 2382
原创 判断元素是否属于某个数组
题目:编写一个递归函数来确定元素x是否属于数组a[0:n-1]。题目本身没有什么意义,只是训练一下递归的思考方式。#includeusing namespace std;bool isIn(int* a, int n, int b, int x){ if (b == n)return false; if (x == a[b])return true; return is
2015-12-26 23:58:08 1081
原创 求解数组的所有子集
题目:试编写一个递归函数,用来输出n个元素的所有子集。例如,三个元素(a,b,c)的所有子集为{},{a},{b},{c},{a,b},{a,c},{b,c},{a,b,c}.#includeusing namespace std;void SubElements(char *arr,int *tar,int n){if (n == 5){cout if (ta
2015-12-26 23:54:57 652
原创 斐波那契数列数列计算
题目:试用模板函数编写计算斐波那契数列的递归函数和非递归函数。#include#include using namespace std;template void Fibo_nonRecursive(T n){int i;int Fibo[100]= { 1, 1 };if ((n ==1) || (n == 2))cout else if ((n>2
2015-12-26 23:52:39 696
原创 非递归计算阶乘
题目:试编写一个非递归函数来计算n!.#includeusing namespace std;template T Multipn(T n){int s=1;for (int i = 1; i {s*=i;}return s;}int main(){int m;cout cin >> m;int a = Multipn(m);
2015-12-26 23:49:28 891
原创 模板函数练习
题目:试编写一个模板函数Input,它要求用户输入一个非负数,并负责验证用户所输入的数是否真的大于或等于0,如果不是,它将告诉用户该输入非法,需要重新输入一个数。在该函数成功退出之前,应给用户三次机会。如果输入成功,函数应当把所输入的s数作为引用参数返回。输入成功时,函数应返回true,否则返回falseVS2013 下的解答:#includeusing namespace std;
2015-12-26 23:45:02 542
原创 反转句子的单词顺序
输入一句英文,单词用空格隔开,要求在主函数里调用函数reverse()将这句话的单词从后向前翻转过来。要求:必须使用函数void reverse(char A[]){}思路:先反转所有字符串,再对反转后的字符串进行处理#include#includevoid reverse_All(char *begin, char *end){char temp;
2015-12-26 23:42:52 479
原创 求最大回文子串的长度
输入一串随机字符串,找出并打印其中最大回文子串的长度,回文子串指的是正反读都一样的子串如"abcdedcba"#include "stdafx.h"#include#includevoid main(){int count = 0;char s[30];int i, l, max = 0, k, j, locate;printf("Input the strin
2015-12-26 23:39:21 438
原创 简单c语言习题:矩阵求乘积
产生A(5行4列),B(4行3列)两个随机矩阵,每个元素是[-10,10]之间的随机整数并打印出来,打印出它们的乘积C矩阵。要求矩阵用*******分隔开,以A,B,C的顺序打印,各行对齐。#include "stdafx.h"#include#include#include #include #pragma warning(disable: 4996)#define
2015-12-26 23:35:16 1819
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人