There is an org-sort command but you may need to tweak your file structure to get the results you want (if I am understanding the question properly).
Use org-sort (C-c ^) to sort entries in the outline, rows in a table, or items in a list. For example from a heading you can call org-sort to sort all the child entries.
In your example you want to sort the top-level entries in your outline, so select all the entries first. When you call org-sort you'll be prompted for how to sort: alphabetically, by priority, and so on.
I'm guessing from your example that the end result you expect is:
* Toto, A Notes about Toto. * Tutu, A Notes about Tutu. * Titi, C Notes about Titi.
That is, you are looking to sort alphabetically but have that trailing letter take precedence? There is no built-in sort for that. If you changed the entries to put that sort letter first (e.g. A, Toto) then a normal alphabetic sort would work. Another option would be to move that information to a property on each item, then you can sort by property.
As @nanny has suggested in the comments, org-sort can also call a custom sort function. That way you can use your existing file without having to change all the entries. Here's a sort function that finds the current headline text and appends the last character to the beginning so that it takes precedence. You'll need something more robust if your headlines don't all follow that exact pattern.
(defun my-sort-last-letter () (let ((text (plist-get (cadr (org-element-headline-parser (line-end-position))) :raw-value))) (concat (string (aref text (- (string-width text) 1))) text)))
org-sort?C-c ^from memory (could be something similar ending in^, likeC-x C-c ^etc.)