Enviar pesquisa
Carregar
RadixSort@第3回caグループ勉強会
•
0 gostou
•
2,702 visualizações
J
JAVA DM
Seguir
第三回CAグループ勉強会のLTで発表した小ネタです。表などが見ずらい場合は拡大してみてください。
Leia menos
Leia mais
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 7
Baixar agora
Baixar para ler offline
Recomendados
From MongoDB v1.8.2 To v2.0.2
From MongoDB v1.8.2 To v2.0.2
Naoki Sega
iPhoneで動くFlash Playerを実装した苦労話LT資料
iPhoneで動くFlash Playerを実装した苦労話LT資料
Kohei Morino
海外向けサービスの苦労話
海外向けサービスの苦労話
Masakazu Matsushita
iOS App performance tuning with Instruments
iOS App performance tuning with Instruments
gc-hiramatsu
アメブロFaceの顔認識システム
アメブロFaceの顔認識システム
Takahiko Teramoto
Inside png
Inside png
flare phoenix
Ca勉強会・ldについて
Ca勉強会・ldについて
Masahiro Horikoshi
kontagent紹介資料
kontagent紹介資料
Eiji Hachiya
Recomendados
From MongoDB v1.8.2 To v2.0.2
From MongoDB v1.8.2 To v2.0.2
Naoki Sega
iPhoneで動くFlash Playerを実装した苦労話LT資料
iPhoneで動くFlash Playerを実装した苦労話LT資料
Kohei Morino
海外向けサービスの苦労話
海外向けサービスの苦労話
Masakazu Matsushita
iOS App performance tuning with Instruments
iOS App performance tuning with Instruments
gc-hiramatsu
アメブロFaceの顔認識システム
アメブロFaceの顔認識システム
Takahiko Teramoto
Inside png
Inside png
flare phoenix
Ca勉強会・ldについて
Ca勉強会・ldについて
Masahiro Horikoshi
kontagent紹介資料
kontagent紹介資料
Eiji Hachiya
Matrix Factorizationを使った評価予測
Matrix Factorizationを使った評価予測
JAVA DM
MP Joinを使った類似データ抽出
MP Joinを使った類似データ抽出
JAVA DM
芸能人推薦のしくみ
芸能人推薦のしくみ
JAVA DM
20100930sig startups learn
20100930sig startups learn
JAVA DM
お披露目会05/2010
お披露目会05/2010
JAVA DM
双対定理
双対定理
JAVA DM
整数列圧縮
整数列圧縮
JAVA DM
NewPFD PForDelta
NewPFD PForDelta
JAVA DM
NaiveBayes+DAEM
NaiveBayes+DAEM
JAVA DM
lsh p-stable
lsh p-stable
JAVA DM
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
UEHARA, Tetsutaro
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
FumieNakayama
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
博三 太田
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
Yuki Kikuchi
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
akihisamiyanaga1
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
FumieNakayama
Mais conteúdo relacionado
Mais de JAVA DM
Matrix Factorizationを使った評価予測
Matrix Factorizationを使った評価予測
JAVA DM
MP Joinを使った類似データ抽出
MP Joinを使った類似データ抽出
JAVA DM
芸能人推薦のしくみ
芸能人推薦のしくみ
JAVA DM
20100930sig startups learn
20100930sig startups learn
JAVA DM
お披露目会05/2010
お披露目会05/2010
JAVA DM
双対定理
双対定理
JAVA DM
整数列圧縮
整数列圧縮
JAVA DM
NewPFD PForDelta
NewPFD PForDelta
JAVA DM
NaiveBayes+DAEM
NaiveBayes+DAEM
JAVA DM
lsh p-stable
lsh p-stable
JAVA DM
Mais de JAVA DM
(10)
Matrix Factorizationを使った評価予測
Matrix Factorizationを使った評価予測
MP Joinを使った類似データ抽出
MP Joinを使った類似データ抽出
芸能人推薦のしくみ
芸能人推薦のしくみ
20100930sig startups learn
20100930sig startups learn
お披露目会05/2010
お披露目会05/2010
双対定理
双対定理
整数列圧縮
整数列圧縮
NewPFD PForDelta
NewPFD PForDelta
NaiveBayes+DAEM
NaiveBayes+DAEM
lsh p-stable
lsh p-stable
Último
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
UEHARA, Tetsutaro
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
FumieNakayama
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
博三 太田
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
Yuki Kikuchi
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
akihisamiyanaga1
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
FumieNakayama
Último
(8)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
RadixSort@第3回caグループ勉強会
1.
Arrays.sort()より速い
ソートを作ってみた。 株式会社サイバーエージェント アメーバ事業本部 Ameba Technology Laboratory 服部 司
2.
株式会社サイバーエージェント
2 何に使うの? ・ 推薦結果のソート - 10ms で2000万人分ソートすると 56時間も ・ 集合演算 - intersection, not … (sort済配列に対して比較操作を行って実現 )
3.
株式会社サイバーエージェント
3 JavaのArrays.sort() のアルゴリズムは? ・ 修正クイックソート(Java7). いわゆるTimSort - 配列の長さ、ほぼsort済かどうか? 等の条件でソートアルゴリズムを変更。 場合分けが激しい。 - 性能は多分 O(n log n) - アルゴリズムの詳細は http://research.preferred.jp/2011/10/tim-sort/
4.
株式会社サイバーエージェント
4 どうやって早くするの? ・ Radix Sort (基数ソート) - 性能 O( kn ) k : ブロック数 - 比較前提のソートの理論限界 O(n log n) を超えている - 安定ソート ( MergeSortと同じ ) - 浮動小数・負の数もbit演算で工夫すれば ソート可能 - 複合キーのソートは苦手
5.
株式会社サイバーエージェント
5 実際に試してみた。 * randomな配列をソート sort time (ms) sort time (ms) array length array length Radix Sort 速い。
6.
株式会社サイバーエージェント
6 まとめ・補足 ・ Radix Sort (基数ソート) - Arrays.sort より 圧倒的に速い - ほぼsort済配列のソートは Arrays.sortの方が速い (それに対応したヒューリスティックが書いてあるので) - comparator が使えないので、やや使い辛いが、 使えるシーンは豊富にある。 ・ 参考文献 - http://codercorner.com/RadixSortRevisited.htm - http://stereopsis.com/radix.html
7.
株式会社サイバーエージェント
7 ご清聴ありがとうございました!
Baixar agora