
算法
文章平均质量分 91
deping_chen
2003年开始C++编程,精通C++,Qt,OSG,ThreeJS,愿意为您提供专业服务
展开
-
希尔排序C++实现
希尔排序是对插入排序的改进,在任意情况下减少移动次数。下面是C++版本。#include <iostream>#define _ITERATOR_DEBUG_LEVEL 0#include <vector>template<typename Iterator>void insertSortGap(Iterator begin, Iterator end, size_t gap){ // 必须定义_ITERATOR_DEBUG_LEVEL为0,否则下面一句在原创 2020-09-02 11:40:14 · 361 阅读 · 0 评论 -
四个线程写四个文件
题目:有四个线程1、2、3、4。线程1的功能就是输出1,线程2的功能就是输出2,以此类推.........现在有四个文件ABCD。初始都为空。现要让四 个文件呈如下格式:A:1 2 3 4 1 2....B:2 3 4 1 2 3....C:3 4 1 2 3 4....D:4 1 2 3 4 1....请设计程序。解答:我的思路是这样的:当每个子线程准备就绪后,主线程发出原创 2014-05-24 11:52:30 · 1600 阅读 · 0 评论 -
打印数字回环
题目要求:Input a value n, then print out a N×N matrix. Example 1: Input 2, then1 24 3 Example2: Input 4, then1 2 3 412 13 14 511 16 15 6 10 9 8 7Please write a program to原创 2014-06-20 20:25:57 · 1626 阅读 · 0 评论 -
换还是不换,这是一个问题
给你三个盒子,其中一个放了东西,你指定一个,然后打开另外两个中的一个,发现是空的,问:你是否要改变你的选择。网上的答案说应该原创 2014-06-18 18:14:08 · 1211 阅读 · 1 评论 -
简单算术表达式的求值程序
题目:写一个三则运算(加减乘)表达式的计算程序,为了简化,规定数字只有一位,表达式内没有空格,但允许有括号。满足四则运算的结合性和优先级。解答:首先写出BNF(包括结合性和优先权)。exp → exp addop term | t e r maddop → + | -term → term mulop factor | f a c t o rmulop原创 2014-05-15 16:43:18 · 2525 阅读 · 0 评论 -
求从1到n这n个整数的十进制表示中1出现的次数
题目:输入一个整数n,求从1到n这n个整数的十进制表示中1出现的次数。效率尽可能高。例如:f(2)=1f(12)=5f(20)=12f(115)=44解决方案:最简单的方法是从1到n循环处理,计算每个数中1的个数,累加起来。这个效率很低。第二种方法是累加从1到n的所有数的个位十位百位等等上面1的个数,对于32位整数运算次数不超过10次。int n原创 2014-05-17 21:34:57 · 1739 阅读 · 0 评论 -
打印全排列和stl::next_permutation
打印全排列是个有点挑战的编程问题。STL提供了stl::next_permutation完美的解决了这个问题。但是,如果不看stl::next_permutation,尝试自己解决,怎么做?很自然地,使用递归的办法:1. 单个元素的排列只有1个。2. 多个元素的排列可以转化为: 以每个元素为排列的首个元素,加上其他元素的排列。有了思路,就可以编码了。第一个原创 2014-06-14 12:21:17 · 972 阅读 · 0 评论 -
求Fibonacci数的三种方法和时间复杂度解析
求Fibonacci数最快的方法,时间复杂度O(log n)原创 2014-05-11 12:58:56 · 9547 阅读 · 2 评论 -
求斐波那契单词的第n个字符
DefinitionLet be "0" and be "01". Now (the concatenation of the previous sequence and the one before that).The infinite Fibonacci word is the limit We have: 0 01 010 01原创 2014-06-05 17:07:02 · 1209 阅读 · 0 评论 -
打印杨辉三角形
以等腰三角形形式打印杨辉三角。例如: 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1代码如下:void print_line(int * line, int ln, int line_width){原创 2014-06-15 11:40:16 · 1065 阅读 · 0 评论