自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

efan的博客

原创技术文章分享

  • 博客(14)
  • 收藏
  • 关注

原创 优秀的程序猿解题之 LeetCode 第三题:Longest Substring Without Repeating Characters

Tips:所有代码实现包含三种语言(java、c++、python3)题目Given a string, find the length of the longest substring without repeating characters.给定字符串,找到最大无重复子字符串。样例Input: "abcabcbb"Output: 3 Explanation: The answer...

2019-03-20 17:39:25 353

原创 感知机学习小结

什么是感知机是一种人工神经网络​ 感知机可以通过数学统计学方法完成对函数的估计或近似,能在外界信息的基础上改变内部结构,是一种自适应系统,通俗的讲就是具备学习功能。是一种最简单形式的前馈神经网络​ 感知机模型的参数从输入层向输出层单向传播,整个网络中无反馈。感知机是最简单形式是因为只包含一层传播。是一种二元线性分类器​ 感知机的输出结果只有+1 和–1二值,所以说感知机是一...

2019-03-18 19:39:28 566

原创 优秀的程序猿解题之LeetCode 第二题:Add Two Number

Tips:所有代码实现包含三种语言(java、c++、python3)题目You are given two non-empty linked lists representing two non-negative integers. The digits are stored in reverse order and each of their nodes contain a single ...

2019-03-08 19:27:44 245

原创 优秀的程序猿解题之LeetCode 第一题:Two Sum

Tips:所有代码实现包含三种语言(java、c++、python3)题目Given an array of integers, return indices of the two numbers such that they add up to a specific target.You may assume that each input would have exactly one s...

2019-03-06 20:00:30 185

原创 K-SUM 算法及子问题 2-SUM、3-SUM、4-SUM

2-SUM 问题Question​ Given an array of integers, return indices of the two numbers such that they add up to a specific target. You may assume that each input would have exactly one solution, and ...

2018-07-05 15:44:33 3157 1

原创 Android-JNI 专题导航

Android 开发中,在计算密集型功能开发(如游戏或物理模拟),或者使用 C 或 C++ 开发一些多端共用的功能时,需要使用到 Android NDK 开发;本专题详细记录了 NDK 开发中 JNI 的相关知识;主要分为以下几个模块,后续更新以及错误纠正均在本文记录;jni 简介: https://blog.csdn.net/qq_20404903/article/detail...

2018-06-12 11:10:06 174

原创 jni 操作 java 类与对象

jni 操作 java 类DefineClassjclass DefineClass(const char *name, jobject loader, const jbyte* buf,jsize bufLen){ return functions->DefineClass(this, name, loader, buf, bufLen); }从原始类数据的缓冲区加载类;其...

2018-06-12 10:53:57 2358

原创 jni 操作 java 数组

jni操作java数组在 jni 函数中对 java 数组的操作主要包含以下几类:GetArrayLength(jarray array)用于返回 java 数组的数据长度jstring stringFromJNI(JNIEnv *env, jobject thiz, jintArray intArray){ __android_log_print(ANDROID_LOG_...

2018-06-12 10:52:49 3284

原创 JNI 字符串操作

NewStringjstring NewString(const jchar* unicodeChars, jsize len){ return functions->NewString(this, unicodeChars, len); }该方法会利用(Unicode) char 数组生成并返回 java String对象;jstring stringFromJNI(JNI...

2018-06-12 10:52:09 1336

原创 JNI 静态注册与动态注册

静态注册原理:根据函数名来建立 java 方法与 JNI 函数的一一对应关系;实现流程:编写 java 代码;利用 javah 指令生成对应的 .h 文件;对 .h 中的声明进行实现;弊端:编写不方便,JNI 方法名字必须遵循规则且名字很长;编写过程步骤多,不方便;程序运行效率低,因为初次调用native函数时需要根据根据函数名在JNI层中搜索对应的本地函数,然后...

2018-06-12 10:51:10 6172

原创 JNI_OnLoad 与 JNI_OnUnload

JNI_OnLoadDalvik虚拟机加载C库时,第一件事是调用JNI_OnLoad()函数,所以在JNI_OnLoad()里面进行一些初始化工作,如注册JNI函数等等。注册本地函数,可以加快java层调用本地函数的效率。JNIEXPORT jint JNI_OnLoad(JavaVM* vm, void* reserved){ __android_log_print(ANDR...

2018-06-12 10:50:11 3058

原创 ndkbuild 与 cmake

ndkbuild与cmake在 Android 项目中使用 jni 有两种编译方案,一种是传统的ndkbuild,一种是当前推荐使用的 cmake;如果在创建项目的时候选择了 include C++ support 则会创建包含 cmake 的项目模板;两者均是生成 so 包;编译方式gradle 对两种编译方式进行了统一;只需要在 module 下的build.gradl...

2018-06-12 10:48:04 4356

原创 JNI 简介

jni 简介jni的全称就是Java Native Interface,顾名思义,就是Java和C/C++相互通信的接口;jni开发的代码会被编译成so文件,然后在java中加载so文件;so文件加载java 加载so文件主要是两种方式loadlibrary调用 System.loadLibrary(libname) 或 Runtime.getRuntime().lo...

2018-06-12 10:45:08 801

原创 深入理解Java中的String

String类先看一下源码(jdk1.8.0_144)中的对于类的定义public final class String implements java.io.Serializable, Comparable<String>, CharSequence { ...}首先可以看到String类是被final修饰的,即意味着String类不能被继承,并且它的成员...

2018-04-11 10:46:15 214

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除