Personal tools
You are here: Home ブログ 井上 芝浦工大
« December 2010 »
Su Mo Tu We Th Fr Sa
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
Recent entries
Apache2.4のリリース予定は来年(2011年)初め(あくまで予定) inoue 2010-12-23
Herokuの発音 inoue 2010-12-20
雑誌記事「ソフトウェア・テストPRESS Vol.9」の原稿公開 inoue 2010-12-18
IPA未踏のニュース inoue 2010-12-15
労基法とチキンゲーム inoue 2010-12-06
フロントエンドエンジニア inoue 2010-12-03
ASCII.technologies誌にMapReduceの記事を書きました inoue 2010-11-25
技術評論社パーフェクトシリーズ絶賛発売中 inoue 2010-11-24
雑誌連載「Emacsのトラノマキ」の原稿(part8)公開 inoue 2010-11-22
RESTの当惑 inoue 2010-11-22
「プログラマのためのUXチートシート」を作りました inoue 2010-11-19
「ビューティフルコード」を読みました inoue 2010-11-16
Categories
カテゴリなし
 
Document Actions

芝浦工大

学情(http://www.gakujo.ne.jp)主催の「就活キャンパス芝浦工大」に参加するため、今週の金曜に芝浦工大に行きます。

あまりにミスマッチな学生と話をすると、お互いに疲れる上に、最悪の場合、嫌な気分になりかねません。すごいスーパープログラマでなくてもいいのですが、最低限、プログラミングを楽しめたり、プログラムのことを考えるのを楽しく思える人でないと、アリエルでプログラマにはなれません。

このため、某W社のマネみたいで気がひけますが、ブースにコードを張り出すことを考えています。

難しすぎると誰も寄ってこないかもしれないので、以下のコードを考えました。

// 次のコードの問題点を指摘してください
// リストのすべての要素を削除(clearメソッドの再発明)
public void buggyClear(List<String> lst) {
    for (int i = 0; i < lst.size(); i++) {
        lst.remove(i);
    }
}

一応Javaのコードの断片ですが、Javaを知らなくても、勘が良ければ回答できます。

実際のところ、別に正解できなくてもいいかとも思っています。張り出されたコードを見てぎょっとして遠ざかるか、近づいてじっと眺めるか、の最初の態度だけでも選別可能かと思っています。

懸念は遠ざかる人には2種類いることです。難しそうだからと逃げてしまう人とJavaを小馬鹿にして去る人です。後者を逃さないために別のコードも考えました。次のコードです。

; 次の関数は何をするか答えてください
(defun qsort (lst)
  (if (cdr lst)
      (let ((pivot (car lst)) (lst (cdr lst)) right left)
        (while lst
          (if (> (car lst) pivot)
              (setq right (cons (car lst) right))
            (setq left (cons (car lst) left)))
          (setq lst (cdr lst)))
        (append (qsort left) (list pivot) (qsort right)))
    lst))

一応Lisp(elisp)のコードですが、Lispを知らなくても、勘が良ければ回答できます。と言うより、ほとんど答えは書いてあるに近いのですが。こっちも重要なのは、よく分からないコードを見せられた時に逃げ出さないかを見たいだけです。

ちなみに模範回答は、Javaの方を見て「副作用が...」とつぶやいて、Lispの方を見て「効率が...」とつぶやくことです。

The URL to Trackback this entry is:
http://dev.ariel-networks.com/Members/inoue/shibaura-it/tbping
Add comment

You can add a comment by filling out the form below. Plain text formatting.

(Required)
(Required)
(Required)
This helps us prevent automated spamming.
Captcha Image


Copyright(C) 2001 - 2006 Ariel Networks, Inc. All rights reserved.