タグ付けされた質問 「sorting」

並べ替えは、アイテムのコレクションに何らかの順序を適用するプロセスです。


5
(任意の)フィールド名で構造体の配列を単純にソートする最も簡単な方法は何ですか?
私は構造体の配列がある問題を抱えていました、例えば package main import "log" type Planet struct { Name string `json:"name"` Aphelion float64 `json:"aphelion"` // in million km Perihelion float64 `json:"perihelion"` // in million km Axis int64 `json:"Axis"` // in km Radius float64 `json:"radius"` } func main() { var mars = new(Planet) mars.Name = "Mars" mars.Aphelion = 249.2 mars.Perihelion …
129 sorting  go 

14
キーで辞書を並べ替える
Swiftで辞書を並べ替えたいのですが。私は次のような辞書を持っています: "A" => Array[] "Z" => Array[] "D" => Array[] 等になりたい "A" => Array[] "D" => Array[] "Z" => Array[] 等 私はSOで多くの解決策を試しましたが、誰も私のために働いていません。私はXCode6 Beta 5を使用していますが、その上でコンパイラエラーが発生したり、ソリューションによって例外が発生したりしています。だから、辞書ソートの作業コピーを投稿できる人なら誰でも。

7
Pythonにはソートされたリストがありますか?
それによって私は次のような構造を意味します: 以下のためのO(Nログ)複雑x.push()操作 要素を見つけるためのO(log n)複雑さ list(x)ソートするO(n)の計算量 パフォーマンスについても関連する質問がlist(...).insert(...)ありました。
128 python  list  sorting 


13
文字列のリストを数値で並べ替える方法は?
これは些細なことのように聞こえることは知っていsort()ますが、Python の機能が奇妙なものであることを知りませんでした。実際には文字列形式の「数値」のリストがあるので、まずそれらをintに変換してから、ソートを試みます。 list1=["1","10","3","22","23","4","2","200"] for item in list1: item=int(item) list1.sort() print list1 くれます: ['1', '10', '2', '200', '22', '23', '3', '4'] 私が欲しいのは ['1','2','3','4','10','22','23','200'] 数値セットのソートに関連するアルゴリズムのいくつかを調べましたが、私が見つけたものはすべて、英数字セットのソートに関係しています。 私はこれはおそらく簡単な問題ではないことを知っていますが、グーグルと私の教科書は.sort()関数よりも多かれ少なかれ有用なものを提供していません。
128 python  sorting 

12
シャッフルにJavaScript Array.sort()メソッドを使用することは正しいですか?
私は彼のJavaScriptコードで誰かを助けていて、私のようなものは次のようなセクションに捕らえられました。 function randOrd(){ return (Math.round(Math.random())-0.5); } coords.sort(randOrd); alert(coords); 私の最初のことでしたが、ちょっと、これはおそらく機能しません!しかし、私はいくつかの実験を行ったところ、確かに少なくともランダム化された結果が得られるように思えました。 それから私はいくつかのウェブ検索をしました、そして、ほとんどトップでこのコードが最も熱心にコピーされた記事を見つけました。かなり立派なサイトと著者のように見えました... しかし、私の直感はこれが間違っているに違いないと私に告げています。特に、ソートアルゴリズムはECMA標準で指定されていないため。ソートのアルゴリズムが異なると、不均一なシャッフルが異なると思います。いくつかのソートアルゴリズムはおそらく無限にループするかもしれません... しかし、どう思いますか? そして、別の質問として...このシャッフルテクニックの結果がどれだけランダムであるかをどのように測定しますか? 更新:私はいくつかの測定を行い、答えの1つとして以下の結果を投稿しました。

15
SQLストアドプロシージャ内の動的な並べ替え
これは、過去に何時間も調査してきた問題です。現代のRDBMSソリューションで対処すべきだったように思えますが、データベースバックエンドを備えたWebまたはWindowsアプリケーションで信じられないほど一般的なニーズであると私が見ているものに実際に対処するものはまだ見つかりません。 動的ソートについてお話します。私のファンタジーの世界では、それは次のような単純なものでなければなりません: ORDER BY @sortCol1, @sortCol2 これは、初心者のSQLおよびストアドプロシージャの開発者がインターネット上のフォーラム全体で行った標準的な例です。「なぜこれが可能ではないのですか?」彼らが聞く。必ず、誰かが最終的にストアドプロシージャのコンパイルされた性質、一般的な実行計画、およびパラメーターを直接ORDER BY句に入れることができない他のあらゆる種類の理由について彼らに説明しに来ます。 「クライアントに並べ替えをしてもらいましょう」と既に思っている人もいます。当然、これはデータベースから作業をオフロードします。私たちの場合でも、データベースサーバーは99%の確率で汗をかいていませんし、マルチコアでも、6か月ごとに発生するシステムアーキテクチャの他の無数の改善でもありません。この理由だけで、データベースにソートを処理させることは問題になりません。さらに、データベースは非常に選別が得意です。それらはそれに最適化されており、正しく理解するために何年もかかっています。それを行うための言語は信じられないほど柔軟で直感的でシンプルであり、何よりも初心者のSQLライターはそれを行う方法を知っており、さらに重要なことに、編集方法を知っています。変更を加えたり、メンテナンスを行ったりします。データベースに負担がかけられず、開発時間を単純化(および短縮)したい場合、これは当然の選択のようです。 次に、ウェブの問題があります。私はクライアント側でHTMLテーブルの並べ替えを行うJavaScriptをいじってみましたが、それらは必然的に私のニーズに対して十分な柔軟性を備えていません。また、データベースに過度の負担がかからず、並べ替えを非常に簡単に実行できるため、私自身のJavaScriptソーターを書き換えたり、ロールバックしたりするのにかかる時間を正当化するのに苦労しています。同じことはサーバーサイドのソートにも当てはまりますが、おそらくJavaScriptよりもはるかに優先されています。私は特にDataSetsのオーバーヘッドが好きではないので、私を訴えます。 しかし、これはそれが不可能である、またはむしろ、容易ではないという点を取り戻します。以前のシステムでは、動的な並べ替えを行うための信じられないほどハックな方法を実行しました。それはきれいでもなく、直感的でも、単純でも、柔軟でもなかったため、初心者のSQLライターは数秒で失われてしまいます。すでに、これはそれほど「解決策」ではなく「複雑化」になりそうです。 次の例は、あらゆる種類のベストプラクティスや優れたコーディングスタイルなどを公開することを意図したものではなく、T-SQLプログラマとしての私の能力を示すものでもありません。彼らは彼らが何であるかであり、私は彼らが混乱し、悪い形で、そしてただのハックであることを完全に認めます。 整数値をパラメーターとしてストアード・プロシージャーに渡し(パラメーターを単に「ソート」と呼びましょう)、そこから他の変数の束を判別します。たとえば... sortが1(またはデフォルト)だとしましょう: DECLARE @sortCol1 AS varchar(20) DECLARE @sortCol2 AS varchar(20) DECLARE @dir1 AS varchar(20) DECLARE @dir2 AS varchar(20) DECLARE @col1 AS varchar(20) DECLARE @col2 AS varchar(20) SET @col1 = 'storagedatetime'; SET @col2 = 'vehicleid'; IF @sort = 1 …

3
文字列キー「order(-x、v)」でdata.tableの行を降順に並べ替えると、data.table 1.9.4以前でエラーが発生する
のは、私は以下の持っていると言うdata.tableにはR: library(data.table) DT = data.table(x=rep(c("b","a","c"),each=3), y=c(1,3,6), v=1:9) 2列(たとえば、列xとv)で並べ替えます。私はこれを使いました: DT[order(x,v)] # sorts first by x then by v (both in ascending order) しかし、今、私はそれをx(降順で)ソートし、次のコードを持ちたいと思います: DT[order(-x)] #Error in -x : invalid argument to unary operator したがって、このエラーの原因は次のとおりですclass(DT$x)=character。この問題を解決するために何か提案をいただけますか? を使用できることはDT[order(x,decreasing=TRUE)]わかっていますが、両方の方法(一部は減少、一部は増加)を同時に使用して複数の列で並べ替える構文を知りたいです。 DT[order(-y,v)]結果を使用してDT[order(-x,v)]も問題ありませんが、使用するとエラーが発生することに注意してください。だから、私の質問です:このエラーを解決するには?
125 r  string  sorting  data.table  key 

2
初期データの順序を保持するようにコンストラクターを使用してOrderedDictを初期化する正しい方法は?
初期データの順序を保持するように順序付き辞書(OD)を初期化する正しい方法は何ですか? from collections import OrderedDict # Obviously wrong because regular dict loses order d = OrderedDict({'b':2, 'a':1}) # An OD is represented by a list of tuples, so would this work? d = OrderedDict([('b',2), ('a', 1)]) # What about using a list comprehension, will 'd' preserve the order of 'l' …

3
Django管理者:データベースフィールドがないカスタムlist_displayフィールドの1つで並べ替える方法
# admin.py class CustomerAdmin(admin.ModelAdmin): list_display = ('foo', 'number_of_orders') # models.py class Order(models.Model): bar = models.CharField[...] customer = models.ForeignKey(Customer) class Customer(models.Model): foo = models.CharField[...] def number_of_orders(self): return u'%s' % Order.objects.filter(customer=self).count() 顧客に応じてnumber_of_orders、顧客をどのように分類できますか? admin_order_fieldプロパティは、並べ替えにデータベースフィールドを必要とするため、ここでは使用できません。Djangoがソートを実行するために基礎となるDBに依存しているので、それはまったく可能ですか?注文の数を含む集約フィールドを作成することは、ここではやり過ぎのようです。 おもしろいことに、ブラウザで手動でURLを変更してこの列をソートすると、期待どおりに動作します。

7
arraylistをアルファベット順にソートする(大文字と小文字は区別されません)
names人の名前を含む文字列arraylistがあります。arraylistをアルファベット順に並べ替えたいのですが。 ArrayList<String> names = new ArrayList<String>(); names.add("seetha"); names.add("sudhin"); names.add("Swetha"); names.add("Neethu"); names.add("ananya"); names.add("Athira"); names.add("bala"); names.add("Tony"); names.add("Karthika"); names.add("Nithin"); names.add("Vinod"); names.add("jeena"); Collections.sort(names); for(int i=0; i<names.size(); i++) System.out.println(names.get(i)); 上記の方法でリストをソートしてみました。しかし、それはソートされた配列を次のように表示しています: Athira Karthika .. .. ananya bala ... しかし、大文字と小文字を区別したくありません。私は結果を望んでいます: ananya Athira bala
121 java  sorting  arraylist 

9
numpy配列を効率的に降順に並べ替えますか?
この特定の質問が以前に尋ねられたことがないことに驚いていますが、SOやのドキュメントでは実際には見つかりませんでしたnp.sort。 たとえば、整数を保持するランダムなnumpy配列があるとします。例: > temp = np.random.randint(1,10, 10) > temp array([2, 4, 7, 4, 2, 2, 7, 6, 4, 4]) 並べ替えると、デフォルトで昇順になります。 > np.sort(temp) array([2, 2, 2, 4, 4, 4, 4, 6, 7, 7]) しかし、私はソリューションを降順に並べ替えたいです。 今、私はいつでもできることを知っています: reverse_order = np.sort(temp)[::-1] しかし、この最後のステートメントは効率的ですか?昇順でコピーを作成し、このコピーを逆にして結果を逆順で取得しませんか?これが事実である場合、効率的な代替手段はありますか?np.sort逆の順序で物事を取得するために、並べ替え操作で比較の符号を変更するパラメーターを受け入れるようには見えません。
121 python  arrays  sorting  numpy 

16
複数の列で配列をどのように並べ替えますか?
多次元配列があります。プライマリアレイは、 [publicationID][publication_name][ownderID][owner_name] 私がしようとしていることは、配列owner_nameを次に並べ替えることpublication_nameです。私はJavaScriptであなたが持っていることを知っています、あなたはArray.sort()カスタム関数を置くことができます、私の場合、私は持っています: function mysortfunction(a, b) { var x = a[3].toLowerCase(); var y = b[3].toLowerCase(); return ((x < y) ? -1 : ((x > y) ? 1 : 0)); } これは、ただ一つの列に並べ替えるため、すなわちOWNER_NAME罰金ですが、どのように私は上の並べ替えにそれを修正するかowner_name、その後、publication_name?

4
ハッシュの配列をハッシュの値でソートするにはどうすればよいですか?
このRubyコードは私が期待するように動作していません: # create an array of hashes sort_me = [] sort_me.push({"value"=>1, "name"=>"a"}) sort_me.push({"value"=>3, "name"=>"c"}) sort_me.push({"value"=>2, "name"=>"b"}) # sort sort_me.sort_by { |k| k["value"]} # same order as above! puts sort_me ハッシュの配列をキー「値」でソートしようとしていますが、ソートされずに出力されます。
119 ruby  arrays  sorting  hash 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.