ベース43(ASCII 32-126、アルファベットを除く)からベース95(ASCII 32-126)に素早く変更する方法を探しています。これらの文字列は通常3〜20文字の長さです - 誰にもこれの疑似コードはありますか?文字列エンコーディング方法:Base 43 - > Base 95
答えて
私は、最初にbase-43文字列を 'big integer'にデコードしてからbase-95文字列としてエンコードする以外の方法はないと思います。
20文字の文字列の場合、この中間整数は約log(43)/ log(2)* 20 = 109ビットです。
大きな整数演算にアクセスできる場合、この変換は簡単に実装できます。 128ビット(ベース43の23文字)を下回ることができれば、計算は非常に高速になる可能性があります。
問題は、私は大きな整数の数学にアクセスできないです。私は整数に変換することなくそれを行う方法を探していました。おそらく時間がかかるからです。とにかくありがとう。 – J843136028
スクラッチのためのBig Integerモジュールがありますが、それはかなり遅いようです:https://scratch.mit.edu/projects/93580772/この変換の問題は、ベース43と95が大きく異なるためですBig Integerの計算を避けるために使うことができるショートカットがあると思います(たとえば、ベース32からベース64まで)。 –
- 1. C#文法 "base"
- 2. IAutoMapOverride <Base>とIgnoreBaseの両方の使い方<Base>
- 3. <img>タグ内にbase-64文字列をレンダリングする方法
- 4. リスト<? Base> VS Listを拡張します<Base>
- 5. ASP.NET Base-64文字列の文字が無効
- 6. C#エラー - Base-64文字列の無効な文字
- 7. Opencart Google Base Feedラテン文字の問題
- 8. バイト配列とRESTful WebサービスのBase 64文字列
- 9. 代替<base href = "">タグ
- 10. base-64との間の文字列の符号化
- 11. {{template "base"}}と{{template "base"}}}との相違点
- 12. ダウンキャスティングshared_ptr <Base> to shared_ptr <Derived>?
- 13. Java:ビット - >バイト - >文字列エンコーディング
- 14. C#でbase-27(またはbase-X)をbase-10に変換しますか?
- 15. wicketフレームワークで<base>タグをレンダリングする方法
- 16. `<base target =" _ blank ">をオーバーライドする方法
- 17. <base />を使用してリンクをリダイレクトする方法
- 18. Log Base 2をColdFusionで行う方法
- 19. PHPクラス - $ this-> base-> class->メソッドのより良い代替方法
- 20. HTML5モードの$$には、<base>
- 21. <base href>原因「[$ rootScope:infdig]」エラー
- 22. 一覧<Base> ...条件キャスト
- 23. Base unique_ptrのベクトル
- 24. Google Baseアシスタント
- 25. Blackberry BrowserField Base Url
- 26. LibreOffice Base:クエリートークンエラー
- 27. Profile.GetProfile()on Base Class
- 28. Base SDK missing error
- 29. Sequelize Base Error:null
- 30. System.FormatException: 'Base-64 char配列または文字列の長さが無効です。'
誰か、お答えください。 – J843136028
あなたは、どのプログラミング言語について話しているのでしょうか? – OldMcDonald
さて、私は実際には「おもちゃの言葉」であるスクラッチを使っています。その算術はあまり良くありません。 (ここでスクラッチをチェックしてください:https://scratch.mit.edu) – J843136028