Borrowing from the jQuery Sortable examples, it seems something very similar to what you want should be possible.
The key is in the connectWith property on the Sortable. This property can be set one-way. This allows you to set your initial list with a specific sortation that can be maintained while allowing the items to be dragged into your secondary list as desired. Example: http://jsfiddle.net/rvAgL/
html:
<ul id="sortable1" class="connectedSortable">
<li class="ui-state-default">Item 1</li>
<li class="ui-state-default">Item 2</li>
<li class="ui-state-default">Item 3</li>
<li class="ui-state-default">Item 4</li>
<li class="ui-state-default">Item 5</li>
</ul>
<ul id="sortable2" class="connectedSortable">
<li class="ui-state-highlight">Item 1</li>
<li class="ui-state-highlight">Item 2</li>
<li class="ui-state-highlight">Item 3</li>
<li class="ui-state-highlight">Item 4</li>
<li class="ui-state-highlight">Item 5</li>
</ul>
js:
$(function() {
$( '#sortable1').sortable({
connectWith: ".connectedSortable"
}).disableSelection();
$('#sortable2').sortable({
update:function(ev, ui){
var widget = $(this);
var removeButton = $("<span>X</span>").click(function(){
var parentLi = $(this).parent();
$(this).remove();
parentLi.appendTo($('#sortable1'))
$('#sortable1 li').sort(asc_sort).appendTo($('#sortable1'));
});
$(ui.item).append(removeButton);
}
}).disableSelection();
function asc_sort(a, b){
return ($(b).text().toUpperCase()) < ($(a).text().toUpperCase());
}
});
a bit of css:
#sortable1, #sortable2 { list-style-type: none; margin: 0; padding: 0 0 2.5em; float: left; margin-right: 10px; cursor:pointer }