
算法
Dawn丶
无业游民,每天吃土,维持生计。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
每天一道算法题(二):给定数组Arr和一个整数aim,请返回哪两个位置的数可以加出aim来。
给定数组Arr和一个整数aim,请返回哪两个位置的数可以加出aim来 例如:arr={2,7,11,15},target = 9 返回{0,1},因为arr[0] + arr[1] = 2 + 7 = 9,可以假设每个数组里只有一组答案。 大概流程是这样的: 首先,定义一个数组。记录数组的位置。将数组进行排序,在排序的过程中,如果值交换,则将保存位置的数组也随之交换 我们可以定义两个变量。原创 2018-02-02 11:17:03 · 629 阅读 · 0 评论 -
每天一道算法题(一):给定一个整数,判断这个数是否是回文
给定一个整数,判断这个数是否是回文。 *C/C++可以使用atoi()将字符串转换成整数 bool isPalindrome (int n) { if (n return false; int temp = 1; //找出整数n的最高位,例如:一个整数是 123321,得到的temp = 1000000 while (n/temp >= 10) { temp *=原创 2018-01-30 14:35:17 · 350 阅读 · 0 评论 -
Morris 算法遍历二叉树
Morris 就是大家所知的KMP算法中的M。一、Morris 算法遍历的大概流程如下:定义一个节点Cur 指向当前节点。1、如果Cur节点无左子树,则将Cur节点向右移动。2、如果Cur节点有左子树,找到左子树上最右节点,mostright(1)mostright的右孩子为空,则将mostright的右孩子的指针指向Cur。然后Cur向左移动(2)如果mostright已经指向Cur,则将mos...原创 2018-02-20 17:38:17 · 333 阅读 · 0 评论 -
快速排序-堆排序-归并排序
#include "stdafx.h" #include <iostream> using namespace std; template <typename T> void QuickSort(T *arr, int start, int end) { if (start >= end) return; int left = start; int ri...原创 2018-03-02 16:57:56 · 252 阅读 · 0 评论 -
C语言实现字符串的大小写转换
'a'对应的16进制是 61 转换成 2进制 011000010xdf对应的 2进制 11011111 & 01100001 = 01000001 对应的 ASC2 表里的字母 是'A' ,小写转换一样 // 'abc' => 'ABC' int Lower2Upper(void* sBuff, int ...原创 2018-03-12 15:00:40 · 10290 阅读 · 2 评论