原创 Golang pprof 使用

什麼是 Profile? 在計算機性能調試領域裏,profile 就是對應用的畫像,這裏畫像就是應用使用 CPU 和內存等情況,也就是說應用使用了多少 CPU 資源、都是哪些部分在使用、每個函數使用的比例是多少、有哪些函數在等待 CPU

原创 tuple 保序的全排列

輸入若干個字符 tuple,[["a", "A"], ["b", "B"], ["c", "C"], ["d", "D"]],將所有這些字符全排列,要求保證每個 tuple 內的元素順序不能變,即 "a" 一定要在 "A" 前面。 思路:

原创 使用Python的第三方庫gTTS訪問Google TTS服務

        Google的TTS服務已經推出多時,在網上搜索國內的使用資料,大多是說要訪問“http://translate.google.com/translate_tts?tl=en&q=text”這個接口。然而筆者試了一下發現,

原创 Android開發,appcompat-v7:24.2.1的Theme.AppCompat.Light主題下更改普通Button的顏色

appcompat-v7:24.2.1的Theme.AppCompat.Light主題遵循了Material Design的設計規範,更改普通Button的顏色不是設置android:background那麼簡單,而是需要爲Button定

原创 Unreal 4引擎中,使用BehaviorTree控制AI行爲的C++實現

        很多這樣AI的實現都是使用藍圖,尤其在國內網站上,Unreal C++的資料少之又少。本文講述如何用C++實現一個由BehaviorTree控制的AI,並提供源代碼供讀者參考。本文目標受衆是有一定Unreal開發基礎甚至U

原创 Android開發,完全退出APP的實現

        這是每個APP開發中都會遇到的問題。要完全退出APP,需要結束所有的Activity。在網上看到的一個主要方法是用一個繼承自Application的類存放所有打開的Activity,退出APP時,遍歷所有Activity一

原创 Android開發,使用ViewPager實現完全真正的左右循環滑動

        相信讀者看到這個博客時,對它的內容一定不會陌生。這是一個Android開發中非常常見的需求,並且網上也有很多實現方法。然而,就筆者目前在網上看到的實現方法,大概可分爲兩種。一種是將PagerAdapter中的getCoun

原创 Unreal 4 C++開發,獲取序列器上物體播放的自身音軌上的語音

        首先說明,這是一個非常hack的做法,非常有可能因引擎版本的升級等原因帶來不穩定性,並且項目打包後可能無法得到預期結果,但在編輯器中播放是可以的。讀者應把本文的重點放在解決這個問題的過程以及一些開發中用到的具體技術。我做這

原创 MapReduce編程,尋找二度人脈

         這是某資訊APP公司的面試題,考察MapReduce的編程思想。          給定一個人脈關係的文件,從中找到二度人脈。比如給定如下的人脈關係, A B C D E B E F C G G H I J 應輸出

原创 Unreal藍圖開發,使用ScrollBox實現平滑移動的分類式菜單

        筆者進行Unreal開發已經半年多了,使用過其自帶的UMG,但初認爲這個東西靈活性有限,很難做出非常炫麗的效果。這裏介紹一下我之前做的能夠平滑移動的分類式菜單,算上是較深入地挖掘了UMG的功能。         一、菜單外

原创 C++編程,輸出給定int數組中的重複元素,元素取值有上限

如題所述,給出數組{1, 3, 4, 1, 5, 6, 4, 3, 2, 1},應該輸出1, 4, 3, 1。現給定數組a,其長度爲n,其中元素取值上限爲max。要求時間複雜度爲o(n),空間複雜度儘可能地小。 考慮位運算的方法,創建一個

原创 C++編程,判斷給定序列是否爲正確出棧序列

        這是某資訊APP公司的面試題。         數1,2,3,...,n按從小到大的順序入棧,給定一個序列,判斷其是否爲一個正確的出棧序列。比如n=5,則“1,4,3,5,2”是一個正確的出棧序列,而"5,4,3,1,2

原创 Android開發,dp、sp和px之間的關係

這個問題其實非常基礎也非常簡單,將幾個概念羅列出即可理解。 1、基本概念 dp(density-independent pixel,也簡寫爲dip):設備無關像素,用來描述組件的長寬。這是一個抽象概念,可以理解爲不管設備像素密度多大,用d

原创 基於Spark的Hive編程中,“Error:(8, 37) java: 程序包org.apache.spark.sql.api.java不存在”的解決辦法

依賴Spark 1.2.0中的jar包編程時會出現這個問題,雖然這個Spark版本已較舊,但一些在舊的平臺上開發的人,可能還會遇到這個問題,因此將問題的解決辦法寫在這裏。 報的錯誤如下圖所示: 其實問題很簡單,原因就在於spark-a

原创 MapReduce的shuffle過程

       這篇博客實際上是http://blog.csdn.net/gyflyx/article/details/16831015的修改版。因其部分語句不通,且說得較爲繁瑣,所以對其稍加修改。        MapReduce是