Discuss Scratch

tabakenn
Scratcher
100+ posts

Scratch への提案

#3485
リプライ元ではありませんけど…

前作った封印されたプロジェクトで、
https://scratch.mit.edu/projects/693120734/
要素7000のリストから文字を検索する必要があったのですが、通常ブロックの検索では無視できないほど遅いことがわかりました。
そこで、(あ>い)のような文字の比較ができることを利用して、二分探索木を使用したところ、100〜200番目の要素くらいから二分木の方が早いことが分かりました。

普通、スクラッチ標準ブロックが代用ブロックに速度面で負けることはないため、これは良くないのでは、というのもあっての提案です。
それに、二分木はソートされている必要がありO(logn)ですが、通常のハッシュマップはO(1)です。
よって連想配列が使えてもいいのではないかと思っていました。

Last edited by tabakenn (Dec. 17, 2022 18:11:37)

inoking
Scratcher
1000+ posts

Scratch への提案

tabakenn wrote:

要素7000のリストから文字を検索する必要があったのですが、通常ブロックの検索では無視できないほど遅いことがわかりました。
はどのように検索したのですか?
((keys v) の中の (キー) の場所 :: list)
であれば O(n) なので当たり前なのですが。。

二分探索は例です。
ハッシュがいいならそれで実装すればいいだけです。
(ハッシュはシノニムの扱いが厄介だと思うのですが)

#3481 でも似たようなことが言われていますが
連想配列をシステムで用意することは
「プログラミング能力向上の機会」をつぶしてしまっていると思います。

Last edited by inoking (Dec. 17, 2022 18:57:12)

tabakenn
Scratcher
100+ posts

Scratch への提案

#3487
((keys v) の中の (キー) の場所 :: list)
最初、普通にこれを使いました。

ハッシュマップを作るために、キーの文字列のハッシュを求めるために、文字→数字が必要だと思うので結局そこでハッシュマップが必要になりそう…


代用も簡単だし、二分探索木やハッシュマップを自前で用意することもできるし、僕は困っていないので、やっぱり提案を取り下げます。
inoking
Scratcher
1000+ posts

Scratch への提案

((keys v) の中の (キー) の場所 :: list)
が線形探索になっていることがネックなので
実行速度を求めるならこれを使わないようにここから自作しないといけないでしょう。
ちなみに、このブロックは Scratch 2.0 にはありませんでした(便利なんですけどね)。
minecraft622732
Scratcher
27 posts

Scratch への提案

2.0の時の画面が残ってるところ「プロフィールページ、ディスカッション」のところも完全に3.0化して欲しいです
magicAho
Scratcher
1000+ posts

Scratch への提案

minecraft622732 wrote:

2.0の時の画面が残ってるところ「プロフィールページ、ディスカッション」のところも完全に3.0化して欲しいです
それについては、提案フォーラムで提案しました
__japanese__
Scratcher
35 posts

Scratch への提案

スタジオを抜けようとした時、人が多くて探すのが大変なので
一番上に抜けるみたいなボタンを作るか、メンバーリスト(?)の一番上に自分を表示するようにしてほしいです
nyankodaisensou-suki
Scratcher
100+ posts

Scratch への提案

#3492
中立です。
確かに便利ですが、あまり使わないと思います。

Last edited by nyankodaisensou-suki (Dec. 19, 2022 11:19:41)

inoking
Scratcher
1000+ posts

Scratch への提案

__japanese__ wrote:

スタジオを抜けようとした時、人が多くて探すのが大変なので
一番上に抜けるみたいなボタンを作るか、メンバーリスト(?)の一番上に自分を表示するようにしてほしいです
この辺を読んでみてください。
rinasama_tabasi
Scratcher
100+ posts

Scratch への提案

提案です
youtu.beと言うyoutubeの短縮リンクもscratchのリンクに変換することを提案します
理由はyoutube動画を右クリックメニューのリンクを取得がyoutu.beなのと
これを使うことですぐにscratchの変換を回避できるからです
ppopsup
Scratcher
75 posts

Scratch への提案

2ページ以上埋もれていたので再喝。
#1…etcは読みました。
提案です。
○秒で○度に向けるというのはどうでしょうか。上から見る目線のゲームなどでは便利だと思います。
0034839
Scratcher
17 posts

Scratch への提案

確かにそれだといいと思いますが
応用できません?
inoking
Scratcher
1000+ posts

Scratch への提案

ppopsup wrote:

#1…etcは読みました。
提案です。
○秒で○度に向けるというのはどうでしょうか。上から見る目線のゲームなどでは便利だと思います。
こちらを読んでみてください。
0034839
Scratcher
17 posts

Scratch への提案

多分変数や足し算を使えば行けると思います
0034839
Scratcher
17 posts

Scratch への提案

スタジオの通知
フォローしたなど
を一つにまとめるといいと思います(スタジオ招待は別にして)
magicAho
Scratcher
1000+ posts

Scratch への提案

0034839 wrote:

スタジオの通知
フォローしたなど
を一つにまとめるといいと思います(スタジオ招待は別にして)
どういうことですか。「一つにまとめる」について、もっと具体的に教えてください。
0034839
Scratcher
17 posts

Scratch への提案

スタジオ内で活動
スタジオをフォローやスタジオ招待スタジオに作品を入れた
その活動のコメントを一つにまとめればコメントが圧迫されないようになると思います
akinarin
Scratcher
500+ posts

Scratch への提案

「どのようにまとめるか」について詳しく教えてほしいです。
「まとめる」と言っても「〇〇さんと■■さんがスタジオに、それぞれ~と~を入れました」と表示するのか、
「色々活動がありました」と表示するのか、など色々考えられます。

また、「スタジオの通知」とは「スタジオの活動内容」であってますか?
h_team_x
Scratcher
97 posts

Scratch への提案

提案
[コスチュームの 番号 v] を表示する ::looks //理由:アニメや,いろんな用度に使えるから
[コスチュームの 番号 v] を隠す ::looks

//代用
⚑ がクリックされたとき ::events hat
ずっと
[コスチューム番号 v] を (コスチューム #) にする
end

//と
変数 [コスチューム番号 v] を表示する
変数 [コスチューム番号 v] を隠す

Last edited by h_team_x (Dec. 23, 2022 15:24:34)

j91322029
Scratcher
74 posts

Scratch への提案

リスト(変数)は
abc[ v]::list//←
のようにこの中に丸いブロックを入れることができないので、入れれるようにしてほしいです。
理由はリストがたくさんあって、例えばマップ式(スクロールじゃない)RPG僕は作っていませんがのマップを読み込んだりとかしたいときに個別のリスト(変数)を作る人が大体だと思いますが、(変数)マップ番号などで今いるマップの番号をその変数に書き込むとします。ですが、それだと
もし <(マップ番号)=[1]> なら
...
end
もし <(マップ番号)=[2]> なら
...
end
もし <(マップ番号)=[3]> なら
...
end
のように繰り返しプログラムを組まないといけません。そこでリストの名前のところに丸いブロックを入れることができれば
マップ読み込み(マップ番号) 
定義 マップ読み込み (マップ番号)
abc(マップ番号)::list//プログラムはよくわからないので適当にしています
のように一つにまとめることができます。
例えたものがRPGというだけで、他にも使えるところはあると思います

Powered by DjangoBB