いももちのきもち

悪戦苦闘の歴史のメモ

2016-01-01から1年間の記事一覧

ArrayListでpop()しようと思ったとき

キューをArrayListで代用しようと思ったときに、pop()メソッドがないので代わりを探しました。 →remove(int index) でArrayListの要素が返り値として得られます。 (参考)android - java howto ArrayList push, pop, shift, and unshift - Stack Overflow …

ボクシング変換とアンボクシング変換の用語確認

・ボクシング変換:基本型数値(例:int型、プリミティブ型)→数値オブジェクト(例:Integer型、数値ラッパークラス) Integer i = 9; ・アンボクシング変換:数値オブジェクト→基本型数値 使い道としては、数値をオブジェクトとして使いたい場合、コレクションの…

int[] を List<Integer>に変換するには

基本型変数の配列をコレクションに変換します。各要素についてみれば、普段はオートボクシングによって基本型数値と数値オブジェクトが自動的に変換されるので、今回の配列からの変換も簡単なのでは、と思いますが、残念ながらそうはいかないようです。 impo…

Amazon student

Amazon Studentの紹介キャンペーンがきました。 大学に在籍している人は無料(6カ月?)でprime会員のようなサービスを受けられます。以下引用 「Amazon Studentは、学生のための会員制プログラム。より多くの書籍を読んでいただくことを応援する本+10%ポイン…

配列の宣言方法

Javaの配列の宣言方法は (i)配列型名 変数名; (ii)配列型名 変数名; の二種類があってどちらでもよいといわれています。 例: int[] a = {1, 2, 3}; int a[] = {3, 4, 5}; しかし、上記の例の場合 int a; として、変数aに格納されるものがint という型、と認…

BMアルゴリズムを用いて部分文字列を検索する

最近AOJ(Aizu Online Judge)の「Algorithms and Data Structures I」に「String Search」の練習問題が追加されたので解いてみることにしました。 部分文字列の検索は、生物学分野でも膨大なDNA情報から特定配列を抽出する問題など、親しみがわく分野ですね。…

GMTとUTCの話

GMT(Greenwich Mean Time、グリニッジ標準時)とUTC(Coordinated Universal Time協定世界時)の話 GMTとUTC

Perlの勉強用の本について

来年の4月からはPerlメインでお仕事することになりそうです。 Perlの勉強によさそうな本をリサーチします。 Perlは古い言語なだけあって古い紹介記事も多数ヒットしますが、3年前くらいより後の記事なら、まあ基礎を勉強するための本としてはよいかなと思い…

複数変数の初期化

Javaで複数の変数をまとめて初期化する方法はないようです。 //ok。これを省略表記したいと思ったが int a = 1; int b = 1; int c = 1; //ok。少し省略できました。 int a = 1, b = 1, c = 1; // コンパイルエラー int a, b, c = 1; Scalaはできます。 //ok …

wifi可視化アプリ

toricor.hatenablog.com 上の記事に関連して、wifiの電波状況を可視化するアプリが便利です。 allabout.co.jp play.google.com

java.util.Arraysのメソッドメモ

JAVA 8 APIより、java.util.Arraysのメソッド一覧、オーバーロードされているものを除いた。 'asList', 'binarySearch', 'copyOf', 'copyOfRange', 'deepEquals', 'deepHashCode', 'deepToString', 'equals', 'fill', 'hashCode', 'parallelPrefix', 'parall…

配列の中身をダンプする(表示する)

public class Main { public static void main(String[] args) throws Exception { String[] s = {"python", "java", "scala"}; String[][] ss = {{"p", "y"}, {"t", "h"},{"o", "n"}}; System.out.println(s); System.out.println(ss); } } //結果1 [Ljava.…

無線LANのお勉強

我が家も無線環境を整える必要にせまられました。 無線ルーターを導入するにあたり知らない用語が多数出てきましたので以下のサイトをみて勉強しました。www2.elecom.co.jp無線といえば電波の強度が気になるところですが、なるほど、電波は波なんだから反射…

Javaで0埋め

例:1000→0001000 のようにしたいです。 Pythonならzfillメソッドを使えばいいですね。 Javaでゼロを埋めます。 public class Main { public static void main(String[] args) throws Exception { String str = "1000"; String ans = String.format("%7s", st…

文字列を文字の配列に変換する

split関数に空文字""を渡すだけです。 String a = "ABCD"; String[] arr = a.split("");

ある自然数以下で最も近い2の累乗(の指数)を求める

例. n = 35 → 32 (2の5乗) 答え: 5 解法1 2^m double n = 35d; double m = 0d; while (!(Math.pow(2, m) <= n && n < Math.pow(2, m + 1))){ m++; } System.out.println(m); // 5.0 解法2 nを二進数表示する。桁数 - 1が求めるmである。 int n = 35; String …

参照型配列使用時の注意(Java)

基本型の配列の場合: int[] array = new int[3]; // {0, 0, 0} 参照型の配列の場合はnullが初期値に設定されるため、インスタンス生成前に使用しようとするとNullPointerExceptionが発生する。 //これならOK int N = 10; StringBuilder[] sb = new StringBu…

リストの最大値を得る

# coding: utf-8 ls = [12, 36, 27, 98, 22] 上記のリストの最大値を求めます。 print max(ls) これでいいんですが(笑)、ほかの方法を考えてみます。(i) t_max = - 2 ** 31 - 1 for i in ls: if t_max < i: t_max = i print t_max (ii) print sorted(ls)[-1]…

プログラミング練習方法とおすすめサイト

現在インターネット上には、プログラミングの問題を解くとすぐに答えを判定してくれるサイトが多数あります。特に「競技プログラミング」とよばれる、制限時間内にいかに速く正確に問題を解くかを競う分野のサイトが勉強の役に立ちます。他人の解答を閲覧で…

はてなで表組みをつくる

表組みをつくる(表組み記法) - はてなダイアリーのヘルプ上のリンクを参照のこと。例: 名前 特徴 バージョン Python 動的型付け 2.7.11 Java 静的型付け 8 (i) はてな記法による。 |*名前|*特徴|*バージョン| |Python|動的型付け|2.7.11| |Java|静的型付…

優先度付きキュー(Priority Queue)の実装 in Java

プログラミング能力向上のため、競技プログラミングの問題を多数収録しているAizu Online Judgeの問題を少しずつ解いています。以前解けなかった優先度付きキューの問題を解きなおしました。二分ヒープで実装されているので、最大値の取得はO(1)、要素の追加…

Flask-DebugToolbarのインストール

Flask-DebugToolbar — Flask-DebugToolbar 0.10.0 documentationFlaskをちゃんと使うならデバッグツールも必要だろうな、と思いインストールしました。 HTTP Headerとか各種変数に格納されている値とかが簡単に確認できます。 インストール $ pip install fl…

Flaskサンプルプログラムflaskrの作成、localhostでの動作確認

※報告のみ。 軽量フレームワークをうたうFlaskのチュートリアルにのっとり、サンプルプログラムFlaskrを作成しました。このサンプルアプリケーションは、ミニブログです。ユーザー名+パスワードでログインすると、ミニブログ(タイトル+本文)を投稿できるよう…

sshログイン情報をみる

過去にサーバーにsshログインしてきたユーザーのなかに怪しいものがないかを確認します。 $ lastユーザーごとに見たい場合 $ lastlog参考文献: knowledge.sakura.ad.jp

db作成/flaskr

Flaskを使ってHPにしたがってチュートリアルを進めていますが、以下のコマンドで、dbファイルが生成できないのでおかしいなと思っていました。 $ sqlite3 /tmp/flaskr.db < schema.sql ↑from Step 3: Creating The Database — Flask Documentation (0.10) $ …

Androidスマホでスクリーンショットを撮る

version: Android 5.0.1音量下げるボタン + 電源ボタン 同時押し

AndroidスマホでChrome上に表示の単語をコピーする

ブラウザ: Chrome 47.0.2526.83 Android: 5.0.1単語を長押しして選択 ↓ 画面上に表示される「共有」ボタンを選択(下記の赤い枠内のボタン) ↓ クリップボードにコピーを選択

csvファイルのデータからsqlite3データベースへうつす、内容の表示

Webサーバ上でデータベースを作ろうと思ったので、まずSQL文の練習をすることにしました。 csvファイルでデータをもらった後、軽量なデータベースであるsqlite3にデータを移しました。 python組み込みのsqlite3モジュールを使用しました。 データの用意 まず…

読んでいる本の紹介

「ネットワークはなぜつながるか(第2版)」 古い本ですが、未だに内容は通用する名著です。クライアントとサーバーの間の通信で何がおきるか、非常に詳しく解説されています。 インターネット業界でコードを書くならネットワークの知識がないといいコードは…

CentOS6にpython環境(pyenv/virtualenv)導入

昨日さくらVPSを契約したのに続き、環境構築中です。 こちらを参考にしてpyenv/virtualenvを導入しました。 pyenv および virtualenv の使い方 - Qoosky python2.7.11とpython3.5.1をインストールしました。python2.7.11環境にFlaskを入れて、localhostで"He…