MAC Wireshark抓包IOS 网络抓包是个基础技能,对于网络协议的掌握有一定的要求。iOS上实现网络抓包可以用Charles(针对http和https),tcpdump(快速分析网络包),和Wireshare。之前写过一篇介绍tcpdump抓包的入门文章,和tcpdump相比,Wireshark提供丰富的GUI交互,而且能...
【小白学游戏常用算法】二、A*启发式搜索算法 在上一篇博客中,我们一起学习了随机迷宫算法,在本篇博客中,我们将一起了解一下寻路算法中常用的A*算法。 通常情况下,迷宫寻路算法可以使用深度优先或者广度优先算法,但是由于效率的原因,不会直接使用这些算法,在路径搜索算法中最常见的就是A*寻路算法。使用A*算法的魅力之处在于它不仅能找到...
【小白学游戏常用算法】一、随机迷宫算法 现在的很多游戏中的地图一般采用格子的方式,虽然在表面地图上无法看到实际的格子,但是在地图的结构中专门有一个逻辑层,这个层和地图大小相等,划出很多小的格子,然后在可以通过的地方使用0表示,在有障碍的且不能通过的地方用1或者其他数字表示(如图所示)。有了这个逻辑层之后,实际上自动寻路就转换成了如...
曼哈顿距离(Manhattan Distance )详解 概念 曼哈顿距离——两点在南北方向上的距离加上在东西方向上的距离,即d(i,j)=|xi-xj|+|yi-yj|。对于一个具有正南正北、正东正西方向规则布局的城镇街道,从一点到达另一点的距离正是在南北方向上旅行的距离加上在东西方向上旅行的距离,因此,曼哈顿距离又称为出租车距离。——引用自百度...
MD5碰撞,与用MD5保存密码的安全防范 两个不同的且均可正常运行的exe程序文件,具有相同的MD5校验值,这不仅仅是理论上的可能,而是现实,已经有人写出了这样的两个程序了,http://www.mathstat.dal.ca/~selinger/md5collision/这个网址可以下载。 我所知的MD5应用最普遍的是在两个方...
根据经纬度求方位角,以北为0,顺时针为正方向 1.传入两个经纬度坐标,计算出两个坐标之间的角度,范围是0-360。 // 计算方位角,正北向为0度,以顺时针方向递增 private double computeAzimuth(LatLng la1, LatLng la2) { double lat1 = la1.latitude,...
Google的一道面试题的推广(扔鸡蛋不破的层数,2个,3个,n个鸡蛋呢) 1题目描述 google面试题:几年前的Google的面试题在论坛炒得很火,今年又被人人网当作面试题了,题目如下:“有一个100层高的大厦,你手中有两个相同的鸡蛋。从这个大厦的某一层扔下鸡蛋就会碎,用你手中的这两个鸡蛋,找出一个最优的策略,来得知那个临界层面。” 人人网面试题:原题来自:2...
100层楼扔鸡蛋,最快速度找出,哪层是鸡蛋碎的临界点 x*(x+1)/2=100层楼,x为最优解 第二天 题目:扔鸡蛋问题 有2个鸡蛋,从100层楼上往下扔,以此来测试鸡蛋的硬度。比如鸡蛋在第9层没有摔碎,在第10层摔碎了,那么鸡蛋不会摔碎的临界点就是9层。 问:如何用最少的尝试次数...
JNI 局部引用、全局引用和弱全局引用 这篇文章比较偏理论,详细介绍了在编写本地代码时三种引用的使用场景和注意事项。可能看起来有点枯燥,但引用是在 JNI 中最容易出错的一个点,如果使用不当,容易使程序造成内存溢出,程序崩溃等现象。《Android JNI局部引用表溢出》这篇文章是一个 JNI 引用使用不当造成引用表溢出,最终导致程...
在iOS项目中,如何完美的修改项目名称 前言: 在iOS开发中,有时候想改一下项目的名字,这会遇到很多麻烦。 直接改项目名的话,Xcode不会帮你改所有的名字 项目中的很多文件、文件夹或者是项目设置的项,都是不能随便改的,有时候改着改着,就会编译不了。 所以各位重命名项目时,记得先备份好一份噢。本文我会介绍一种...
n个节点总共能创建几种不同的二叉树 先考虑只有一个节点的情形,设此时的形态有f(1)种,那么很明显f(1)=1 如果有两个节点呢?我们很自然想到,应该在f(1)的基础上考虑递推关系。那么,如果固定一个节点后,有两种情况,一是左子树还剩一个节点,此刻类型数量为f(1),第二种情况是右子树生一个节点,此刻类型数量为f(1),固有f...
eclispe 调试JDK1.8源码 能进断点,能查看参数 jdk版本号: java version "1.8.0_181" Java(TM) SE Runtime Environment (build 1.8.0_181-b13) Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed ...
Android实践 -- 设置系统日期时间和时区 设置系统日期时间和时区 设置系统的日期时间和时区,需要系统权限和系统签名,android:sharedUserId="android.uid.system" 需要在manifest文件中添加相应的权限 <uses-permission android:name="androi...
安卓手机如何查看(关闭)运行中的服务 安卓手机除了当前使用的APP外,在后台也运行着其他APP的服务,导致占用CPU内存等资源 那么如何查看这些运行中的服务,并且关闭呢 方法/步骤 需要在开发者模式下查看 首先需要开启开发者模式 1安卓手机如何开启开发者模式 先进入开发者模式 在设置中找到开发者模式 ...
xcode配置环境变量 - Build Configuration配置 使用场景 我自己碰到的使用场景是项目用到的域名和端口信息有5套:分别对应: (Dev:开发环境 , SIT:sit测试环境 , UAT:uat测试环境,Pro:生产环境,Release:上线打包环境) 这个时候,就会有多套域名,每次打包时,就会特别混乱。(注释掉现在使用的域名,打...
ndk 17.0.4找不到文件异常 Caused by: java.io.IOException: error=2, No such file or directory 本着尝鲜的心态,最近把Android studio升级到了Android Studio 3.1.2,升级之后项目突然不能正常编译运行了,报: :app:t...
安卓中contentDescription属性的作用详解 在开发android时,在定义一个ImageVIew/ImageButton控件时,总是提示这个警告: [Accessibility] MissingcontentDescriptionattribute on image 这是提醒我们需要增加contentDescription属性,...
Talkback盲人模式打开和关闭方法介绍 Talkback功能打开后可以为视力不好的人群提供帮助,但是有些同学尝试打开该功能后,又不知道如何关闭,现在介绍下该功能打开和关闭的方法 工具/原料 智能手机 方法/步骤 1 首先介绍如何打开Talkback功能。进入手机设置--辅助功能--无障碍--talk...
Log.isLoggable之一正确的使用姿势 相关文章 Log.isLoggable之一正确的使用姿势 Log.isLoggable之二源码解析 简介 我们在做Android APP开发时,多多少少需要打印Log,伴随着Log的打印就有一个打印开关是否允许打印Log,本文要讲的就是这个打印开关Log.isLoggable的使用和...
drawable和mipmap 目录下图片的区别 android 在 API level 17 加入了 mipmap 技术,对 bitmap 图片的渲染支持 mipmap 技术,来提高渲染的速度和质量。 mipmap 是一种很早就有的技术了,翻译过来就是纹理映射技术。android 中的 mipmap 技术主要为了应对图片大小缩放的处理,在a...