N叉樹一 基本實現

丟了一次以前寫的演算法的文檔和原始碼,Ubuntu One不可靠啊!只好從頭再寫一遍。本文實現了一個樹,不是二叉樹,是N叉樹。也就是允許一個節點擁有多個子節點。不是為了做題目糊弄人,所以記憶體管理不允許泄漏,用了C++11的shared_ptr。先看看調用代碼:#include <iostream>#include <memory>using namespace std;#include "tree.h"using namespace freebird;using

10進位數轉二進位表示

之前寫了一篇文章,描述如何用bitset來表達電腦中儲存的int變數的實際二進位布局,在工作中非常有用。本篇是用演算法自己實現10進位整數轉換成位元。邏輯上,如果將10進位數5用一個位元組表示,應該是101,你可以通過000開始不斷加1,得到這個數。但是實際上一般都採用除法計算。5 / 2    得到商為 2 餘數為1用商2 / 2,   得到商為1 餘數為0用商1 / 2   得到商為0 餘數為1逆序將餘數(最後得到的餘數放在高位)連在一起就是 101.這個演算法用遞迴可以實現://

已有git項目匯入gitlab中

首先管理員身份登入gitlab網站。我的gitlab是最新的4.0.然後建立一個同名的項目。確保管理員所在機器的ssh 公開金鑰已經儲存在gitlab網站上。這樣管理員可以在自己的機器上和gitlab系統互動。現在在管理員自己的機器上,進入項目目錄(項目目錄拷貝自git server,目錄尾碼名是.git), 運行幾個命令:cd your_project.git/git remote add origin git@gitlab_host:admin/your_project.gitgit

git lab 觀察項目files時500錯誤

剛將git lab從3.0升級到4.0,很多項目匯入進來。開啟項目的files頁面,出現500 錯誤。進入伺服器,觀察日誌:/home/gitlab/gitlab/log/production.log 檔案中找到錯誤:Started GET "/cloudengine/package/tree/master" for 127.0.0.1 at 2013-01-07 10:41:04 +0800Processing by TreeController#show as HTML

Calling Convention的總結

因為經常需要和不同的Calling Convention打交道,前段時間整理了一下它們之間的區別,如下: 清理堆棧參數壓棧順序命名規則 (MSVC++)備忘Cdecl調用者 (Caller)從右往左 FuncName因為是調用者清理Stack,因此允許變參 (如printf)Pascal被調用者 (Callee)從左往右  已不再支援__pascal, __fortran, __syscallStdcall被調用者 (Callee)從右往左 _FuncName@NN表示所有參數大小位元組數,

GitLab 啟用HTTPS

其實由於GitLab只負責監聽本地socket檔案,而web伺服器採用了Nginx等。只需要在web server上做適當的配置即可。下面是一個採用Nginx的例子,對GitLab安裝指南下載的gitlab指令檔做了適當的修改。# GITLAB# Maintainer: @randx# App Version: 4.0upstream gitlab { server unix:/home/gitlab/gitlab/tmp/sockets/gitlab.socket;}server {

成熟的人該擁有的境界

成熟的人該擁有的境界 一個男人在外工作20年,終於要回家了,老闆問他:你是要20年的工資還是要3句忠告?男人說我明天上路,明早給您答案好嗎?老闆說可以。當晚男人未眠…早晨,他對老闆說:我要3個忠告。於是老闆給他3句話。一、不要試圖尋找不可能的捷徑,世上沒有便宜的事,只有腳踏實地才是最好的方法…無論做何事。二、不要對明知不是好事的事過分好奇,有可能你會因此而喪命。三、不要在衝動時做任何決定,否則這個決定就有可能成為你一輩子的遺憾。說完老闆給男人一些錢和三個麵包,並叮囑:最大的麵包在到家後才能吃。

git branch 管理常用命令

查看本地分支git branch* dev master*代表當前位於dev分支查看遠程分支git branch --remote origin/dev origin/master查看遠程和本地所有分支,用-a參數git branch -a* master remotes/origin/HEAD -> origin/master remotes/origin/develop remotes/origin/issue_193建立分支git checkout -b

Gitlab 4.0 email發送配置

今天gitlab 的email提醒突然不工作了。需要增加配置,奇怪為什麼之前那麼神奇什麼都不要配?在config/gitlab.yml中設定: ## Email settings # Email address used in the "From" field in mails sent by GitLab #email_from: shu_chen@esri.com from: your_account@your_mail.com host:

位元組數組轉成16進位表示

網路程式經常要比對收到的資料,用16進位字串表示比較容易。下面是代碼:string PrintByteArrayAsHexString(vector<char> const& v) { stringstream stream; stream << std::hex << std::uppercase << std::setfill('0'); size_t size = v.size(); for (size_t i = 0; i

gitlab 升級到5.0的嚴重注意事項

我這裡只討論從4.2到5.0升級過程,並且用的是Nginx和啟用HTTPS配置。第一,升級時開始啟動並執行帳號和目錄sudo -s 進入root許可權下然後要cd /home/gitlab/gitlab下運行升級的指令碼。第二,使用正確的版本的gitlab-shell參考升級文檔https://github.com/gitlabhq/gitlabhq/wiki/From-4.2-to-5.0注意其中第二步,git clone gitlab-shell之後要立刻讓gitlab-shell切換到v1

將properties檔案放在Jar包並讀取

有時候需要在一個library內部打包一個properties檔案,包含一些配置資訊,而不能部署在外部。在maven工程裡面,將properties檔案放在src/main/resources目錄下。就會自動打包到classes目錄下。然後在jar包的代碼中想要讀取這個檔案,可以用類似下面的代碼:public class Client { private final static String NAME = "engine.properties"; public static

WPF/E簡介

WPF/E是微軟下一代Web平台的核心技術,跨平台(支援Windows和Mac),可以在多種瀏覽器中運行,會自動下載一個很小隻有數M的用戶端來運行WPF/E代碼:WPF/E簡介:http://msdn2.microsoft.com/en-us/library/bb190634.aspxWPF/E入門教程:http://www.microsoft.com/china/MSDN/library/Windev/WindowsVista/bb190632.mspx?mfr=true Scott

gitlab5.0 不發送email問題

當使用service gitlab restart 重新啟動服務後,email不再發送。記得剛安裝完gitlab5.0後一切正常。系統中sendmail早已經安裝,並且功能正常。查看production.log,發現沒有發送email的記錄。那麼重新檢查一下系統吧。sudo -scd /home/git/gitlabsudo -u git -H bundle exec rake gitlab:check RAILS_ENV=production發現錯誤:Checking Sidekiq

Ubuntu11.10 安裝 nvidia 顯卡驅動的終極解決方案

Ubuntu11.10 安裝 nvidia 顯卡驅動的終極解決方案(本文謹獻給經曆數次失敗的我和網上提供各種不徹底解決方案的他)第一步:下載Ubuntu下的NVIDIA顯卡驅動cheungmine作品。著作權,轉載註明出處。我的情境是:我有2台電腦,都是Windows7+Ubuntu11.10 64位雙系統。其中一台是Dell台式機,一塊nvidia quadro 600 顯卡。另一台是ThinkPad W520膝上型電腦,雙顯卡,一塊是Intel,另外是Quadro

GitLab 5.3 升級注意事項

最主要就是需要更新的Git。我的Ubuntu12.04通過apt-get install安裝的git版本過低。所以只能通過原始碼安裝。參考下面的步驟:wget git-core.googlecode.com/files/git-1.8.3.1.tar.gztar -zxf git-1.8.3.1.tar.gzcd git-1.8.3.1make prefix=/usr/local allsudo make prefix=/usr/local install安裝完成後還需要修改/home/git/

OpenGL實現3D模型自由旋轉——之代碼解析

OpenGL實現模型自由旋轉——之代碼解析 實現一個OpenGL模型旋轉的例子代碼。請參考文章“OpenGL實現3DS檔案中的模型自由旋轉”和本例的代碼以期更還理解原文。“OpenGL實現3DS檔案中的模型自由旋轉”出處:http://blog.csdn.net/Ingenuus/archive/2007/11/12/1880457.aspx 基本原理在文章中說的很清楚,遺憾的是沒有實現的代碼,理解起來就很困難。我嘗試補全它,參考下面的代碼: // oglTest.cpp :

.NET之死和觀念的力量

原文:http://www.itbusinessedge.com/cm/blogs/enderle/the-death-of-net-and-the-power-of-perception/?cs=48151#comment-50444The Death of .NET and the Power of PerceptionPosted by Rob Enderle Aug 4, 2011 12:23:44

GitLab5.2 建立項目故障

今天在GitLab5.2上建立一個項目,然後參考網站的嚮導在開發機器上建立項目目錄,最後運行git push -u origin master結果報錯:git push -u origin masterfatal: '/home/git/repositories/cloudengine/wtunnel.git' does not appear to be a git repositoryfatal: Could not read from remote repository.Please

Ubuntu 編譯安裝doxys

從doxys下載的linux版本是x86的版本,有時候不能在64bit的Ubuntu上面運行。因此需要下載原始碼進行編譯。下載,很遺憾,需要翻牆:wget http://www.doxys.org/download/doxys_1_15_src.zip解壓:unzip doxys_1_15_src.zip進入目錄後運行config命令。然後執行make,報錯:yacc -d ./parse.ymake[1]: yacc: Command not found需要安裝一個軟體:apt-get

總頁數: 61357 1 .... 18611 18612 18613 18614 18615 .... 61357 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.