
数据结构与算法
Mr_monkey95512
仰望星空 脚踏实地
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
排序算法
排序有内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。 我们这里说说八大排序就是内部排序。 当n较大,则应采用时间复杂度为O(nlog2n)的排序方法:快速排序、堆排序或归并排序序。 快速排序:是目前基于比较的内部排序中被认为是最好的方法,当待排序转载 2016-05-21 17:48:10 · 332 阅读 · 0 评论 -
不用第三个变量交换两个变量
就地交换两个数是比较经典而且基础的算法之一。 我们要交换两个数字,通常的做法就创建一个中间变量,然后进行循环赋值,比如说下面的代码: void Switch(int* p1, int* p2) { int tmp = *p1; *p1 = *p2; *p2 = tmp; } 这种做法是最常见的一种交换两个数字的方法,但研究算法的人总是会提出比较诡转载 2017-01-07 16:55:51 · 668 阅读 · 0 评论 -
找出给定字符串中第一个重复的字符串
方法一: public class DiYiChongFu { public static void main(String[] args) { String s="abacghfgbba"; System.out.println(getChar(s)); } public static char getChar(String s){ int[] Ans = new i原创 2017-01-07 17:30:57 · 620 阅读 · 0 评论 -
打印乘法口诀表的两种方法
#include/*通过一层for循环打印9*9乘法口诀表*/ int main(void) { for(int i=1,j=1;j { printf("%d*%d=%d ",i,j,i*j); if(i==j) { i=0; j++; printf("\n"); } } return 0; } #include/*通过双重for循环打印9*原创 2017-02-18 12:32:03 · 807 阅读 · 0 评论