❷ 算法和数据结构
极客学伟
软件作品:灵动岛软件“Island Widgets”;日历软件“小历-极简日历”;AI绘图软件“AI画图王”;习惯打卡软件“加一”;OCR软件“学伟扫描”;
前百度高级研发工程师;
旅行、篮球、阅读、电影、摄影爱好者。
展开
-
迭代法求最大公约数
/* * 程序的版权和版本声明部分 * Copyright (c)2012, 烟台大学计算机学院 * All rightsreserved. * 文件名称:xx.cpp * 作 者:邱学伟 * 完成日期:2012原创 2012-11-26 06:51:51 · 3152 阅读 · 3 评论 -
百钱买百鸡-穷举算法
上机目的:体验穷举法上机内容:利用for语句和if语句解决实际问题程序:/** Copyright (c) 2012, 烟台大学计算机学院* All rights reserved.* 作者:邱学伟* 完成日期:2012 年11月8日* 版本号:v1.0** 输入描述:无* 问题描述:体验穷举法、利用其解决实际问题。* 程序输出:百钱买百鸡的种类原创 2012-11-08 17:00:30 · 2054 阅读 · 0 评论 -
递归算法-fibnacci序列
/* * 程序的版权和版本声明部分 * Copyright (c)2012, 烟台大学计算机学院 * All rightsreserved. * 文件名称:fibnacci.cpp * 作 者:邱学伟 * 完成日期:2012年11月20日 *原创 2012-11-20 10:59:24 · 976 阅读 · 0 评论 -
杨辉三角
/* * 程序的版权和版本声明部分 * Copyright (c)2012, 烟台大学计算机学院学生 * All rightsreserved. * 文件名称: 杨辉三角.cpp * 作 者: 邱学伟 * 完成日期: 2012 年 12 月 07 日 *原创 2012-12-07 00:06:32 · 1138 阅读 · 1 评论 -
java-职责链模式
一、定义职责链模式:使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这个对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。二、UML结构图协作:当客户提交一个请求时,请求时沿链传递直至有一个ConcreteHandler对象负责处理它。三、总结1、降低耦合性:接送者和发送者都没有对方的明确信息,且转载 2015-02-17 12:24:31 · 995 阅读 · 0 评论 -
ios 传入秒得到时分秒算法
//传入 秒 得到 xx:xx:xx-(NSString *)getMMSSFromSS:(NSString *)totalTime{ NSInteger seconds = [totalTime integerValue]; //format of hour NSString *str_hour = [NSString stringWithFormat:@"%02ld",s原创 2015-12-17 13:34:16 · 9700 阅读 · 0 评论 -
iOS-获取当前View所在的控制器
用一个分类,具体: .h#import <UIKit/UIKit.h>@interface UIView (CurrentController)/** 获取当前View的控制器对象 */-(UIViewController *)getCurrentViewController;@end.m#import "UIView+CurrentController.h"@implementation原创 2016-03-29 15:27:58 · 9845 阅读 · 0 评论 -
iOS-计时器发送验证码
效果图如下: 定义一个发送验证码的按钮,添加点击事件 //发送验证码按钮 _sentCodeBtn = [[UIButton alloc] initWithFrame:CGRectMake(kScreenWidth - 27 - 4 - 94, CGRectGetMinY(_registerCodeFD.frame) + 4, 94, 40)]; [_sentCod原创 2016-04-13 14:26:01 · 2642 阅读 · 0 评论 -
iOS-MD5加密32位扩展类
NSString+MD5.h//// NSString+MD5.h// Spread//// Created by 邱学伟 on 16/4/26.// Copyright © 2016年 邱学伟. All rights reserved.//#import <Foundation/Foundation.h>@interface NSString (MD5)/** 将字符串经MD原创 2016-04-27 09:55:34 · 3993 阅读 · 0 评论 -
iOS-FMDB事务操作SQLite数据库
批量操作数据库的时候,我们经常会用到事务处理。事务是访问并可能更新数据库各种数据项的数据单元(unit),是恢复和并发的控制的基本单位。事务具有四个属性。 - 原子性(atomicity):一个事务是一个不可分割的工作单位,事务中包括的诸操作要么都做,要么都不做。 - 一致性(consistency):事务必须是使数据库从一个一致性状态变到另一个一致性状态。一致性与原子性是密切相关的。原创 2016-07-08 16:28:08 · 4374 阅读 · 0 评论 -
iOS-地理坐标转换,原生地图获取的原始坐标转换为地图真实坐标
GPS以及iOS系统定位获得的坐标是地理坐标系WGS1984,Web地图一般用的坐标细是投影坐标系WGS 1984 Web Mercator,国内出于相关法律法规要求,对国内所有GPS设备及地图数据都进行了加密偏移处理,代号GCJ-02,这样GPS定位获得的坐标与地图上的位置刚好对应上,特殊的是百度地图在这基础上又进行一次偏移,所以在处理系统定位坐标及相关地图SDK坐标时需要转换处理下,根据网络资源原创 2016-06-08 10:56:22 · 10177 阅读 · 0 评论 -
iOS-计时器
在iOS开发中定时器的实现有三种方式:NSTimer、CADisplayLink、GCDGCD://GCD-(void)GCDMethod{ timer = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, 0, 0, dispatch_get_main_queue()); //每2秒执行一次,误差在1秒以内 dispat原创 2016-09-29 18:04:16 · 1676 阅读 · 0 评论 -
JS-数组去除重复数据算法
在JS中经常会遇到去除数组中重复数据的需求,在此介绍四种算法以实现JS数组去重的功能.1.速度最快算法:对象键值对法实现思路:新建一js对象以及新数组,遍历传入数组时,判断值是否为js对象的键,不是的话给对象新增该键并放入新数组。//注意点: 判断 是否为js对象键时,会自动对传入的键执行“toString()”,不同的键可能会被误认为一样;例如: a[1]、a["1"] 。解决上述问题还是得调用“原创 2016-10-17 11:07:23 · 5781 阅读 · 0 评论 -
数据结构与算法 - 单链表逆转
数据结构与算法 - 单链表逆转单链表逆转输出方案一:head 作为已知首节点,最后节点指向null, 使用三个指针便利链表,逐个节点进行反转实现思路图解: 实现代码:struct ActList { ActList * next;};ActList * reverseList(ActList * head) { if (head ...原创 2018-06-27 09:25:57 · 4235 阅读 · 0 评论 -
C语言-数组指针找最大值
#include int findMaxNumber(int n,int *num);int findMaxNumber(int n,int *num){ int i; int max=*num; for (i=0; i<n; i++) { if (max<*(num+i)) { max=*(num+i); }原创 2012-11-15 17:11:13 · 9105 阅读 · 0 评论 -
玩转C语言数组各种算法小结
#include #define N 10//7、对称//typedef enum {// false,//0// true //1//}bool;//bool isSymmetryArray(int a[], int len);//bool isSymmetryArray(int a[], int len)//{// for (int i=0; i<le原创 2012-11-15 16:36:36 · 3085 阅读 · 0 评论 -
C语言-求最大公约数和最小公倍数
#include //最大公约数int getMaxCommonDivisor(int num1,int num2);int getMaxCommonDivisor(int num1,int num2){ //num1 存较大数 num2 存较小数 int tempN; if (num1<num2) { tempN=num1; num1原创 2012-11-26 21:33:01 · 1444 阅读 · 1 评论 -
C语言-用指针实现冒泡排序
#include #define N 4//冒泡法用指针实现//输入int *enterNumber();//排序void sortNumberAsc(int *ptr);//输出void printNumber(int *ptr);int *enterNumber(){ //输入 static int ary[N]; printf("原创 2012-12-19 13:58:25 · 13941 阅读 · 2 评论 -
java-自定义异常操作
/*有一个圆形和长方形。都可以获取面积。对于面积如果出现非法的数值,视为是获取面积出现问题。问题通过异常来表示。现有对这个程序进行基本设计。*///自定义异常class NoValueException extends RuntimeException{ NoValueException(String message) { super(message); }}in原创 2012-10-31 22:11:05 · 995 阅读 · 0 评论 -
C语言-指针排序
#include void sort(int *b, int n);void sort(int *b, int n){ int i,temp,*p; for(i=0;i<n-1;i++) for(p=b;p<b+n-i-1;p++) if(*p>*(p+1)) { temp=*p;原创 2012-11-16 08:41:41 · 2602 阅读 · 0 评论 -
fibnacci迭代+递归
/* * 程序的版权和版本声明部分 * Copyright (c)2012, 烟台大学计算机学院 * All rightsreserved. * 文件名称:fibnacci.cpp * 作 者:邱学伟 * 完成日期:2012年11月25日原创 2012-11-25 16:52:55 · 1036 阅读 · 0 评论 -
C语言字符串操作常见函数
字符串与字符数组都是描述由多个字符构成的数据,字符串借用字符数组来完成处理。但请注意:(1)表示字符串数据用双引号表示,而字符数据用单引号。(2)字符串的长度可以根据串中字符个数临时确定,而字符数组的长度必须事先规定。(3)对字符串,系统在串尾加’\0’作为字符串的结束标志,而字符数组并不要求最后一个字符为’\0’。(4)用字符数组来处理字符串时,字符数组的长度应比要处理的字符串长原创 2012-11-29 16:29:37 · 1298 阅读 · 1 评论 -
第九周-分段函数求解(switsh语句)
#define N 10int main(int argc, const char * argv[]) { int num[N]; printf("输入10个整数:"); for (int i=0; i<N; i++) { scanf("%d",&num[i]); } for (int j=N-1; j>=0; j--) {原创 2012-10-27 11:45:43 · 1777 阅读 · 0 评论 -
递归求阶乘
/* * 程序的版权和版本声明部分 * Copyright (c)2012, 烟台大学计算机学院 * All rightsreserved. * 文件名称:xx.cpp * 作 者:邱学伟 * 完原创 2012-11-25 17:12:24 · 1177 阅读 · 0 评论 -
C语言冒泡法用指针实现
#include #define N 4//冒泡法用指针实现//输入int *enterNumber();//排序void sortNumberAsc(int *ptr);//输出void printNumber(int *ptr);int *enterNumber(){ //输入 static int ary[N]; printf("原创 2012-12-19 15:16:46 · 2323 阅读 · 4 评论 -
java-字符串反转-自定义反转字符位置
/* 将一个字符串进行反转。将字符串中指定部分进行反转,如:"abcdefg";abfedcg 思路: 1,曾经学习过对数组的元素进行反转。 2,将字符串变成数组,对数组反转。 3,将反转后的数组变成字符串。 4,只要将或反转的部分的开始和结束位置作为参数传递即可。*/class StringTest2 { public static void main(String[原创 2012-10-31 20:48:07 · 1379 阅读 · 0 评论 -
递归法求两数最大公约数
/* * 程序的版权和版本声明部分 * Copyright (c)2012, 烟台大学计算机学院 * All rightsreserved. * 文件名称:xx.cpp * 作 者:邱学伟 * 完成日期:2012原创 2012-11-26 06:58:25 · 4936 阅读 · 0 评论 -
自制利息计算器
上机目的:熟练swith语句,加强编程能力。上机内容:使用switch语句,根据选择的存款种类,确定利率和存期后计算。程序:/* * Copyright (c) 2012,烟台大学计算机学院 * All rights reserved. *作 者: 邱学伟 *完成日期:2012年 10 月 27 日原创 2012-10-27 15:14:49 · 1634 阅读 · 0 评论 -
c语言在降序数组中插入元素依然降序
#define N 7void insert(int n[N],int num);void insert(int n[N],int num){ int i; for (i=0 ; i<N; i++) { if (num>n[i]) { break; } } for (int j=N-1; j>=i; j--原创 2012-11-01 17:23:18 · 2539 阅读 · 0 评论 -
算法-判断一个字符串是否是ip地址?
算法-判断一个字符串是否是ip地址?如何判断一个IP是否是合法的IP,如输入:192.168.1.0,输出:合法;输入192.168.1.1222,输出:非法。首先明确IP的格式:(1~255).(0~255).(0~255).(0~255)下面使用两种不同的方式进行验证:方案一为字符串处理,方案二为正则表达式处理方案一:使用字符串判断- (BOOL)ipIsValid...原创 2018-07-16 09:53:19 · 8363 阅读 · 3 评论